http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListConfigurationEntriesOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListConfigurationEntriesOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListConfigurationEntriesOptions.java
new file mode 100644
index 0000000..d3ff66e
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListConfigurationEntriesOptions.java
@@ -0,0 +1,113 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what configuration entries are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/listConfigurations.html";
+ *      />
+ */
+public class ListConfigurationEntriesOptions extends BaseHttpRequestOptions {
+
+   public static final ListConfigurationEntriesOptions NONE = new 
ListConfigurationEntriesOptions();
+
+   /**
+    * @param category
+    *    list by category name
+    */
+   public ListConfigurationEntriesOptions category(String category) {
+      this.queryParameters.replaceValues("category", 
ImmutableSet.of(category));
+      return this;
+   }
+
+   /**
+    * @param keyword
+    *    list by keyword
+    */
+   public ListConfigurationEntriesOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   /**
+    * @param name
+    *    list by entry name
+    */
+   public ListConfigurationEntriesOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   public ListConfigurationEntriesOptions page(long page) {
+      this.queryParameters.replaceValues("page", ImmutableSet.of(page + ""));
+      return this;
+   }
+
+   public ListConfigurationEntriesOptions pageSize(long pageSize) {
+      this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize 
+ ""));
+      return this;
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListConfigurationEntriesOptions#category
+       */
+      public static ListConfigurationEntriesOptions category(String category) {
+         ListConfigurationEntriesOptions options = new 
ListConfigurationEntriesOptions();
+         return options.category(category);
+      }
+
+      /**
+       * @see ListConfigurationEntriesOptions#keyword
+       */
+      public static ListConfigurationEntriesOptions keyword(String keyword) {
+         ListConfigurationEntriesOptions options = new 
ListConfigurationEntriesOptions();
+         return options.keyword(keyword);
+      }
+
+      /**
+       * @see ListConfigurationEntriesOptions#name
+       */
+      public static ListConfigurationEntriesOptions name(String name) {
+         ListConfigurationEntriesOptions options = new 
ListConfigurationEntriesOptions();
+         return options.name(name);
+      }
+
+      /**
+       * @see ListConfigurationEntriesOptions#page
+       */
+      public static ListConfigurationEntriesOptions page(long page) {
+         ListConfigurationEntriesOptions options = new 
ListConfigurationEntriesOptions();
+         return options.page(page);
+      }
+
+      /**
+       * @see ListConfigurationEntriesOptions#pageSize
+       */
+      public static ListConfigurationEntriesOptions pageSize(long pageSize) {
+         ListConfigurationEntriesOptions options = new 
ListConfigurationEntriesOptions();
+         return options.pageSize(pageSize);
+      }
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDiskOfferingsOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDiskOfferingsOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDiskOfferingsOptions.java
new file mode 100644
index 0000000..b85c739
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDiskOfferingsOptions.java
@@ -0,0 +1,88 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what disk offerings are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api/user/listDiskOfferings.html";
+ *      />
+ */
+public class ListDiskOfferingsOptions extends BaseHttpRequestOptions {
+
+   public static final ListDiskOfferingsOptions NONE = new 
ListDiskOfferingsOptions();
+
+   /**
+    * @param id
+    *           the ID of the disk offering
+    */
+   public ListDiskOfferingsOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param domainId
+    *           the ID of the domain associated with the disk offering
+    */
+   public ListDiskOfferingsOptions domainId(String domainId) {
+      this.queryParameters.replaceValues("domainid", ImmutableSet.of(domainId 
+ ""));
+      return this;
+
+   }
+
+   /**
+    * @param name
+    *           the disk offering name
+    */
+   public ListDiskOfferingsOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListDiskOfferingsOptions#name
+       */
+      public static ListDiskOfferingsOptions name(String name) {
+         ListDiskOfferingsOptions options = new ListDiskOfferingsOptions();
+         return options.name(name);
+      }
+
+      /**
+       * @see ListDiskOfferingsOptions#domainId
+       */
+      public static ListDiskOfferingsOptions domainId(String id) {
+         ListDiskOfferingsOptions options = new ListDiskOfferingsOptions();
+         return options.domainId(id);
+      }
+
+      /**
+       * @see ListDiskOfferingsOptions#id
+       */
+      public static ListDiskOfferingsOptions id(String id) {
+         ListDiskOfferingsOptions options = new ListDiskOfferingsOptions();
+         return options.id(id);
+      }
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainChildrenOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainChildrenOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainChildrenOptions.java
new file mode 100644
index 0000000..9d936fc
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainChildrenOptions.java
@@ -0,0 +1,131 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what domain children are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api_2.2.12/domain_admin/listDomains.html";
+ *      />
+ */
+public class ListDomainChildrenOptions extends BaseHttpRequestOptions {
+
+   public static final ListDomainChildrenOptions NONE = new 
ListDomainChildrenOptions();
+
+   /**
+    * @param parentDomainId
+    *    firewall rule ID
+    */
+   public ListDomainChildrenOptions parentDomainId(String parentDomainId) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(parentDomainId 
+ ""));
+      return this;
+   }
+
+   /**
+    * @param isRecursive
+    *    to return the entire tree, use the value "true". To return
+    *    the first level children, use the value "false".
+    */
+   public ListDomainChildrenOptions isRecursive(boolean isRecursive) {
+      this.queryParameters.replaceValues("isrecursive", 
ImmutableSet.of(isRecursive + ""));
+      return this;
+   }
+
+   /**
+    * @param keyword
+    *    list by keyword
+    */
+   public ListDomainChildrenOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   /**
+    * @param name
+    *    list by domain name
+    */
+   public ListDomainChildrenOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   public ListDomainChildrenOptions page(long page) {
+      this.queryParameters.replaceValues("page", ImmutableSet.of(page + ""));
+      return this;
+   }
+
+   public ListDomainChildrenOptions pageSize(long pageSize) {
+      this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize 
+ ""));
+      return this;
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListDomainChildrenOptions#parentDomainId
+       */
+      public static ListDomainChildrenOptions parentDomainId(String 
parentDomainId) {
+         ListDomainChildrenOptions options = new ListDomainChildrenOptions();
+         return options.parentDomainId(parentDomainId);
+      }
+
+      /**
+       * @see ListDomainChildrenOptions#isRecursive
+       */
+      public static ListDomainChildrenOptions isRecursive(boolean isRecursive) 
{
+         ListDomainChildrenOptions options = new ListDomainChildrenOptions();
+         return options.isRecursive(isRecursive);
+      }
+
+      /**
+       * @see ListDomainChildrenOptions#keyword
+       */
+      public static ListDomainChildrenOptions keyword(String keyword) {
+         ListDomainChildrenOptions options = new ListDomainChildrenOptions();
+         return options.keyword(keyword);
+      }
+
+      /**
+       * @see ListDomainChildrenOptions#name
+       */
+      public static ListDomainChildrenOptions name(String name) {
+         ListDomainChildrenOptions options = new ListDomainChildrenOptions();
+         return options.name(name);
+      }
+
+      /**
+       * @see ListDomainChildrenOptions#page
+       */
+      public static ListDomainChildrenOptions page(long page) {
+         ListDomainChildrenOptions options = new ListDomainChildrenOptions();
+         return options.page(page);
+      }
+
+      /**
+       * @see ListDomainChildrenOptions#pageSize
+       */
+      public static ListDomainChildrenOptions pageSize(long pageSize) {
+         ListDomainChildrenOptions options = new ListDomainChildrenOptions();
+         return options.pageSize(pageSize);
+      }
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainsOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainsOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainsOptions.java
new file mode 100644
index 0000000..094d6ea
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListDomainsOptions.java
@@ -0,0 +1,130 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what domains are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api_2.2.12/domain_admin/listDomains.html";
+ *      />
+ */
+public class ListDomainsOptions extends BaseHttpRequestOptions {
+
+   public static final ListDomainsOptions NONE = new ListDomainsOptions();
+
+   /**
+    * @param id
+    *    firewall rule ID
+    */
+   public ListDomainsOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param keyword
+    *    list by keyword
+    */
+   public ListDomainsOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   /**
+    * @param level
+    *    list by domain level
+    */
+   public ListDomainsOptions level(long level) {
+      this.queryParameters.replaceValues("level", ImmutableSet.of(level + ""));
+      return this;
+   }
+
+   /**
+    * @param name
+    *    list by domain name
+    */
+   public ListDomainsOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   public ListDomainsOptions page(long page) {
+      this.queryParameters.replaceValues("page", ImmutableSet.of(page + ""));
+      return this;
+   }
+
+   public ListDomainsOptions pageSize(long pageSize) {
+      this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize 
+ ""));
+      return this;
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListDomainsOptions#id
+       */
+      public static ListDomainsOptions id(String id) {
+         ListDomainsOptions options = new ListDomainsOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListDomainsOptions#keyword
+       */
+      public static ListDomainsOptions keyword(String keyword) {
+         ListDomainsOptions options = new ListDomainsOptions();
+         return options.keyword(keyword);
+      }
+
+      /**
+       * @see ListDomainsOptions#level
+       */
+      public static ListDomainsOptions level(long level) {
+         ListDomainsOptions options = new ListDomainsOptions();
+         return options.level(level);
+      }
+
+      /**
+       * @see ListDomainsOptions#name
+       */
+      public static ListDomainsOptions name(String name) {
+         ListDomainsOptions options = new ListDomainsOptions();
+         return options.name(name);
+      }
+
+      /**
+       * @see ListDomainsOptions#page
+       */
+      public static ListDomainsOptions page(long page) {
+         ListDomainsOptions options = new ListDomainsOptions();
+         return options.page(page);
+      }
+
+      /**
+       * @see ListDomainsOptions#pageSize
+       */
+      public static ListDomainsOptions pageSize(long pageSize) {
+         ListDomainsOptions options = new ListDomainsOptions();
+         return options.pageSize(pageSize);
+      }
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEgressFirewallRulesOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEgressFirewallRulesOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEgressFirewallRulesOptions.java
new file mode 100644
index 0000000..2f2ce02
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEgressFirewallRulesOptions.java
@@ -0,0 +1,178 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what egress firewall rules are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/3.0.6/api_3.0.6/root_admin/listEgressFirewallRules.html";
+ *      />
+ */
+public class ListEgressFirewallRulesOptions extends AccountInDomainOptions {
+
+   public static final ListEgressFirewallRulesOptions NONE = new 
ListEgressFirewallRulesOptions();
+
+   /**
+    * @param id
+    *    firewall rule ID
+    */
+   public ListEgressFirewallRulesOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param networkId
+    *    the id of network of the firewall services
+    */
+   public ListEgressFirewallRulesOptions networkId(String networkId) {
+      this.queryParameters.replaceValues("networkid", 
ImmutableSet.of(networkId + ""));
+      return this;
+   }
+
+   /**
+    * @param ipAddressId
+    *    the id of IP address of the firewall services
+    */
+   public ListEgressFirewallRulesOptions ipAddressId(String ipAddressId) {
+      this.queryParameters.replaceValues("ipaddressid", 
ImmutableSet.of(ipAddressId + ""));
+      return this;
+   }
+
+   /**
+    * @param projectId
+    *    List firewall rules in this project.
+    */
+   public ListEgressFirewallRulesOptions projectId(String projectId) {
+      this.queryParameters.replaceValues("projectid", 
ImmutableSet.of(projectId + ""));
+      return this;
+   }
+
+   /**
+    * @param keyword
+    *    list by keyword
+    */
+   public ListEgressFirewallRulesOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   public ListEgressFirewallRulesOptions page(long page) {
+      this.queryParameters.replaceValues("page", ImmutableSet.of(page + ""));
+      return this;
+   }
+
+   public ListEgressFirewallRulesOptions pageSize(long pageSize) {
+      this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize 
+ ""));
+      return this;
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListEgressFirewallRulesOptions#id
+       */
+      public static ListEgressFirewallRulesOptions id(String id) {
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#networkId
+       */
+      public static ListEgressFirewallRulesOptions networkId(String networkId) 
{
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.networkId(networkId);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#ipAddressId
+       */
+      public static ListEgressFirewallRulesOptions ipAddressId(String 
ipAddressId) {
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.ipAddressId(ipAddressId);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#projectId(String)
+       */
+      public static ListEgressFirewallRulesOptions projectId(String projectId) 
{
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.projectId(projectId);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#keyword
+       */
+      public static ListEgressFirewallRulesOptions keyword(String keyword) {
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.keyword(keyword);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#page
+       */
+      public static ListEgressFirewallRulesOptions page(long page) {
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.page(page);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#pageSize
+       */
+      public static ListEgressFirewallRulesOptions pageSize(long pageSize) {
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.pageSize(pageSize);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#accountInDomain
+       */
+      public static ListEgressFirewallRulesOptions accountInDomain(String 
account, String domain) {
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.accountInDomain(account, domain);
+      }
+
+      /**
+       * @see ListEgressFirewallRulesOptions#domainId
+       */
+      public static ListEgressFirewallRulesOptions domainId(String id) {
+         ListEgressFirewallRulesOptions options = new 
ListEgressFirewallRulesOptions();
+         return options.domainId(id);
+      }
+
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListEgressFirewallRulesOptions accountInDomain(String account, 
String domain) {
+      return 
ListEgressFirewallRulesOptions.class.cast(super.accountInDomain(account, 
domain));
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListEgressFirewallRulesOptions domainId(String domainId) {
+      return 
ListEgressFirewallRulesOptions.class.cast(super.domainId(domainId));
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEventsOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEventsOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEventsOptions.java
new file mode 100644
index 0000000..bdb5587
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListEventsOptions.java
@@ -0,0 +1,140 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import java.util.Date;
+
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what events are returned
+ *
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api_2.2.12/user/listEvents.html";
+ *      />
+ */
+public class ListEventsOptions extends BaseHttpRequestOptions {
+   public static final ListEventsOptions NONE = new ListEventsOptions();
+
+   public ListEventsOptions account(String account) {
+      this.queryParameters.replaceValues("account", ImmutableSet.of(account));
+      return this;
+   }
+
+   public ListEventsOptions domainId(String domainId) {
+      this.queryParameters.replaceValues("domainid", ImmutableSet.of(domainId 
+ ""));
+      return this;
+   }
+
+   public ListEventsOptions duration(String duration) {
+      this.queryParameters.replaceValues("duration", 
ImmutableSet.of(duration));
+      return this;
+   }
+
+   public ListEventsOptions endDate(Date enddate) {
+      this.queryParameters.replaceValues("enddate", ImmutableSet.of(enddate + 
""));
+      return this;
+   }
+
+   public ListEventsOptions entryTime(Date entrytime) {
+      this.queryParameters.replaceValues("entrytime", 
ImmutableSet.of(entrytime + ""));
+      return this;
+   }
+
+   public ListEventsOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id));
+      return this;
+   }
+
+   public ListEventsOptions projectId(String projectId) {
+      this.queryParameters.replaceValues("projectid", 
ImmutableSet.of(projectId + ""));
+      return this;
+   }
+
+   public ListEventsOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   public ListEventsOptions level(String level) {
+      this.queryParameters.replaceValues("level", ImmutableSet.of(level));
+      return this;
+   }
+
+   public ListEventsOptions type(String type) {
+      this.queryParameters.replaceValues("type", ImmutableSet.of(type));
+      return this;
+   }
+
+
+   public static class Builder {
+      public static ListEventsOptions account(String account) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.account(account);
+      }
+
+      public static ListEventsOptions domainId(String domainId) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.domainId(domainId);
+      }
+
+      public static ListEventsOptions duration(String duration) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.duration(duration);
+      }
+
+      public static ListEventsOptions endDate(Date enddate) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.endDate(enddate);
+      }
+
+      public static ListEventsOptions entryTime(Date entrytime) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.entryTime(entrytime);
+      }
+
+      public static ListEventsOptions id(String id) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.id(id);
+      }
+
+      public static ListEventsOptions projectId(String projectId) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.projectId(projectId);
+      }
+
+      public static ListEventsOptions keyword(String keyword) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.keyword(keyword);
+      }
+
+      public static ListEventsOptions level(String level) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.level(level);
+      }
+
+      public static ListEventsOptions type(String type) {
+         final ListEventsOptions options = new ListEventsOptions();
+         return options.type(type);
+      }
+
+   }
+
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListFirewallRulesOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListFirewallRulesOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListFirewallRulesOptions.java
new file mode 100644
index 0000000..7f83213
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListFirewallRulesOptions.java
@@ -0,0 +1,161 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what firewall rules are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/listFirewallRules.html";
+ *      />
+ */
+public class ListFirewallRulesOptions extends AccountInDomainOptions {
+
+   public static final ListFirewallRulesOptions NONE = new 
ListFirewallRulesOptions();
+
+   /**
+    * @param id
+    *    firewall rule ID
+    */
+   public ListFirewallRulesOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param ipAddressId
+    *    the id of IP address of the firewall services
+    */
+   public ListFirewallRulesOptions ipAddressId(String ipAddressId) {
+      this.queryParameters.replaceValues("ipaddressid", 
ImmutableSet.of(ipAddressId + ""));
+      return this;
+   }
+
+   /**
+    * @param projectId
+    *    List firewall rules in this project.
+    */
+   public ListFirewallRulesOptions projectId(String projectId) {
+      this.queryParameters.replaceValues("projectid", 
ImmutableSet.of(projectId + ""));
+      return this;
+   }
+
+   /**
+    * @param keyword
+    *    list by keyword
+    */
+   public ListFirewallRulesOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   public ListFirewallRulesOptions page(long page) {
+      this.queryParameters.replaceValues("page", ImmutableSet.of(page + ""));
+      return this;
+   }
+
+   public ListFirewallRulesOptions pageSize(long pageSize) {
+      this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize 
+ ""));
+      return this;
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListFirewallRulesOptions#id
+       */
+      public static ListFirewallRulesOptions id(String id) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListFirewallRulesOptions#ipAddressId
+       */
+      public static ListFirewallRulesOptions ipAddressId(String ipAddressId) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.ipAddressId(ipAddressId);
+      }
+
+      /**
+       * @see ListFirewallRulesOptions#projectId(String)
+       */
+      public static ListFirewallRulesOptions projectId(String projectId) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.projectId(projectId);
+      }
+
+      /**
+       * @see ListFirewallRulesOptions#keyword
+       */
+      public static ListFirewallRulesOptions keyword(String keyword) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.keyword(keyword);
+      }
+
+      /**
+       * @see ListFirewallRulesOptions#page
+       */
+      public static ListFirewallRulesOptions page(long page) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.page(page);
+      }
+
+      /**
+       * @see ListFirewallRulesOptions#pageSize
+       */
+      public static ListFirewallRulesOptions pageSize(long pageSize) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.pageSize(pageSize);
+      }
+
+      /**
+       * @see ListFirewallRulesOptions#accountInDomain
+       */
+      public static ListFirewallRulesOptions accountInDomain(String account, 
String domain) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.accountInDomain(account, domain);
+      }
+
+      /**
+       * @see ListFirewallRulesOptions#domainId
+       */
+      public static ListFirewallRulesOptions domainId(String id) {
+         ListFirewallRulesOptions options = new ListFirewallRulesOptions();
+         return options.domainId(id);
+      }
+
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListFirewallRulesOptions accountInDomain(String account, String 
domain) {
+      return 
ListFirewallRulesOptions.class.cast(super.accountInDomain(account, domain));
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListFirewallRulesOptions domainId(String domainId) {
+      return ListFirewallRulesOptions.class.cast(super.domainId(domainId));
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListHostsOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListHostsOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListHostsOptions.java
new file mode 100644
index 0000000..8ecd62b
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListHostsOptions.java
@@ -0,0 +1,262 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.cloudstack.domain.AllocationState;
+import org.jclouds.cloudstack.domain.Host;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what hosts information is returned
+ *
+ * @see <a
+ *      
href="http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/listHosts.html";
+ *      />
+ */
+public class ListHostsOptions extends AccountInDomainOptions {
+
+   public static final ListHostsOptions NONE = new ListHostsOptions();
+
+   /**
+    * @param id the id of the host
+    */
+   public ListHostsOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param allocationState list hosts by allocation state
+    */
+   public ListHostsOptions allocationState(AllocationState allocationState) {
+      this.queryParameters.replaceValues("allocationstate", 
ImmutableSet.of(allocationState.toString()));
+      return this;
+   }
+
+   /**
+    * @param clusterId lists hosts existing in particular cluster
+    */
+   public ListHostsOptions clusterId(String clusterId) {
+      this.queryParameters.replaceValues("clusterid", 
ImmutableSet.of(clusterId + ""));
+      return this;
+   }
+
+   /**
+    * @param keyword List by keyword
+    */
+   public ListHostsOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   /**
+    * @param name List by name
+    */
+   public ListHostsOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   /**
+    * @param page
+    */
+   public ListHostsOptions page(long page) {
+      this.queryParameters.replaceValues("page", ImmutableSet.of(page + ""));
+      return this;
+   }
+
+   /**
+    * @param pageSize the page size
+    */
+   public ListHostsOptions pageSize(long pageSize) {
+      this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize 
+ ""));
+      return this;
+   }
+
+   /**
+    * @param podId the Pod ID for the host
+    */
+   public ListHostsOptions podId(String podId) {
+      this.queryParameters.replaceValues("podid", ImmutableSet.of(podId + ""));
+      return this;
+   }
+
+   /**
+    * @param state the state of the host
+    */
+   public ListHostsOptions state(String state) {
+      this.queryParameters.replaceValues("state", ImmutableSet.of(state));
+      return this;
+   }
+
+   /**
+    * @param type the type of the host
+    */
+   public ListHostsOptions type(Host.Type type) {
+      this.queryParameters.replaceValues("type", 
ImmutableSet.of(type.toString()));
+      return this;
+   }
+
+   /**
+    * @param virtualMachineId lists hosts in the same cluster as this VM and 
flag hosts with
+    *                         enough CPU/RAm to host this VM
+    */
+   public ListHostsOptions virtualMachineId(String virtualMachineId) {
+      this.queryParameters.replaceValues("virtualmachineid", 
ImmutableSet.of(virtualMachineId + ""));
+      return this;
+   }
+
+   /**
+    * @param zoneId the Zone ID for the host
+    */
+   public ListHostsOptions zoneId(String zoneId) {
+      this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + 
""));
+      return this;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListHostsOptions accountInDomain(String account, String domain) {
+      return ListHostsOptions.class.cast(super.accountInDomain(account, 
domain));
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListHostsOptions domainId(String domainId) {
+      return ListHostsOptions.class.cast(super.domainId(domainId));
+   }
+
+   public static class Builder {
+      /**
+       * @see ListHostsOptions#id
+       */
+      public static ListHostsOptions id(String id) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListHostsOptions#allocationState
+       */
+      public static ListHostsOptions allocationState(AllocationState 
allocationState) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.allocationState(allocationState);
+      }
+
+      /**
+       * @see ListHostsOptions#clusterId
+       */
+      public static ListHostsOptions clusterId(String clusterId) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.clusterId(clusterId);
+      }
+
+      /**
+       * @see ListHostsOptions#keyword(String)
+       */
+      public static ListHostsOptions keyword(String keyword) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.keyword(keyword);
+      }
+
+      /**
+       * @see ListHostsOptions#name(String)
+       */
+      public static ListHostsOptions name(String name) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.name(name);
+      }
+
+      /**
+       * @see ListHostsOptions#page
+       */
+      public static ListHostsOptions page(long page) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.page(page);
+      }
+
+      /**
+       * @see ListHostsOptions#pageSize
+       */
+      public static ListHostsOptions pageSize(long pageSize) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.pageSize(pageSize);
+      }
+
+      /**
+       * @see ListHostsOptions#podId
+       */
+      public static ListHostsOptions podId(String podId) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.podId(podId);
+      }
+
+      /**
+       * @see ListHostsOptions#state
+       */
+      public static ListHostsOptions state(String state) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.state(state);
+      }
+
+      /**
+       * @see ListHostsOptions#type
+       */
+      public static ListHostsOptions type(Host.Type type) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.type(type);
+      }
+
+      /**
+       * @see ListHostsOptions#virtualMachineId
+       */
+      public static ListHostsOptions virtualMachineId(String virtualMachineId) 
{
+         ListHostsOptions options = new ListHostsOptions();
+         return options.virtualMachineId(virtualMachineId);
+      }
+
+      /**
+       * @see ListHostsOptions#zoneId
+       */
+      public static ListHostsOptions zoneId(String zoneId) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.zoneId(zoneId);
+      }
+
+      /**
+       * @see ListHostsOptions#accountInDomain
+       */
+      public static ListHostsOptions accountInDomain(String account, String 
domain) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.accountInDomain(account, domain);
+      }
+
+      /**
+       * @see ListHostsOptions#domainId
+       */
+      public static ListHostsOptions domainId(String domainId) {
+         ListHostsOptions options = new ListHostsOptions();
+         return options.domainId(domainId);
+      }
+   }
+
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListIPForwardingRulesOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListIPForwardingRulesOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListIPForwardingRulesOptions.java
new file mode 100644
index 0000000..a55936e
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListIPForwardingRulesOptions.java
@@ -0,0 +1,137 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what ip forwarding rules are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api/user/listIpForwardingRules.html";
+ *      />
+ */
+public class ListIPForwardingRulesOptions extends AccountInDomainOptions {
+
+   public static final ListIPForwardingRulesOptions NONE = new 
ListIPForwardingRulesOptions();
+
+   /**
+    * @param id
+    *           Lists rule with the specified ID.
+    */
+   public ListIPForwardingRulesOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param IPAddressId
+    *           list the rule belonging to this public ip address
+    */
+   public ListIPForwardingRulesOptions IPAddressId(String IPAddressId) {
+      this.queryParameters.replaceValues("ipaddressid", 
ImmutableSet.of(IPAddressId + ""));
+      return this;
+
+   }
+
+   /**
+    * @param virtualMachineId
+    *           Lists all rules applied to the specified Vm.
+    */
+   public ListIPForwardingRulesOptions virtualMachineId(String 
virtualMachineId) {
+      this.queryParameters.replaceValues("virtualmachineid", 
ImmutableSet.of(virtualMachineId + ""));
+      return this;
+
+   }
+
+   /**
+    * @param projectId
+    *           Lists all rules applied to VMs in the given project.
+    */
+   public ListIPForwardingRulesOptions projectId(String projectId) {
+      this.queryParameters.replaceValues("projectid", 
ImmutableSet.of(projectId + ""));
+      return this;
+
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListIPForwardingRulesOptions#accountInDomain
+       */
+      public static ListIPForwardingRulesOptions accountInDomain(String 
account, String domain) {
+         ListIPForwardingRulesOptions options = new 
ListIPForwardingRulesOptions();
+         return options.accountInDomain(account, domain);
+      }
+
+      /**
+       * @see ListIPForwardingRulesOptions#IPAddressId
+       */
+      public static ListIPForwardingRulesOptions IPAddressId(String 
IPAddressId) {
+         ListIPForwardingRulesOptions options = new 
ListIPForwardingRulesOptions();
+         return options.IPAddressId(IPAddressId);
+      }
+
+      /**
+       * @see ListIPForwardingRulesOptions#domainId
+       */
+      public static ListIPForwardingRulesOptions domainId(String id) {
+         ListIPForwardingRulesOptions options = new 
ListIPForwardingRulesOptions();
+         return options.domainId(id);
+      }
+
+      /**
+       * @see ListIPForwardingRulesOptions#id
+       */
+      public static ListIPForwardingRulesOptions id(String id) {
+         ListIPForwardingRulesOptions options = new 
ListIPForwardingRulesOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListIPForwardingRulesOptions#virtualMachineId
+       */
+      public static ListIPForwardingRulesOptions virtualMachineId(String 
virtualMachineId) {
+         ListIPForwardingRulesOptions options = new 
ListIPForwardingRulesOptions();
+         return options.virtualMachineId(virtualMachineId);
+      }
+
+      /**
+       * @see ListIPForwardingRulesOptions#projectId(String)
+       */
+      public static ListIPForwardingRulesOptions projectId(String projectId) {
+         ListIPForwardingRulesOptions options = new 
ListIPForwardingRulesOptions();
+         return options.projectId(projectId);
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListIPForwardingRulesOptions accountInDomain(String account, String 
domain) {
+      return 
ListIPForwardingRulesOptions.class.cast(super.accountInDomain(account, domain));
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListIPForwardingRulesOptions domainId(String domainId) {
+      return ListIPForwardingRulesOptions.class.cast(super.domainId(domainId));
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListISOsOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListISOsOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListISOsOptions.java
new file mode 100644
index 0000000..0659d51
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListISOsOptions.java
@@ -0,0 +1,247 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import java.util.Set;
+
+import org.jclouds.cloudstack.domain.ISO;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options for the ISO listISOs method.
+ *
+ * @see org.jclouds.cloudstack.features.ISOApi#listISOs
+ * @see org.jclouds.cloudstack.features.ISOApi#listISOs
+ */
+public class ListISOsOptions extends AccountInDomainOptions {
+   public static final ListISOsOptions NONE = new ListISOsOptions();
+
+   private static final Set<String> TRUE = 
ImmutableSet.of(Boolean.toString(true));
+   private static final Set<String> FALSE = 
ImmutableSet.of(Boolean.toString(false));
+
+   /**
+    * the ISO is bootable
+    */
+   public ListISOsOptions bootable() {
+      this.queryParameters.replaceValues("bootable", TRUE);
+      return this;
+   }
+
+   /**
+    * the ISO is bootable
+    */
+   public ListISOsOptions notBootable() {
+      this.queryParameters.replaceValues("bootable", FALSE);
+      return this;
+   }
+
+   /**
+    * @param hypervisor the hypervisor for which to restrict the search
+    */
+   public ListISOsOptions hypervisor(String hypervisor) {
+      this.queryParameters.replaceValues("hypervisor", 
ImmutableSet.of(hypervisor));
+      return this;
+   }
+
+   /**
+    * @param id list all isos by id
+    */
+   public ListISOsOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id));
+      return this;
+   }
+
+   /**
+    * @param projectId list ISOs in the given project
+    */
+   public ListISOsOptions projectId(String projectId) {
+      this.queryParameters.replaceValues("projectid", 
ImmutableSet.of(projectId + ""));
+      return this;
+   }
+
+   /**
+    * @param isoFilter possible values are "featured", "self", 
"self-executable","executable", and "community".
+    */
+   public ListISOsOptions isoFilter(ISO.ISOFilter isoFilter) {
+      this.queryParameters.replaceValues("isofilter", 
ImmutableSet.of(isoFilter.name()));
+      return this;
+   }
+
+   /**
+    * the ISO is publicly available to all users
+    */
+   public ListISOsOptions isPublic() {
+      this.queryParameters.replaceValues("ispublic", TRUE);
+      return this;
+   }
+
+   /**
+    * the ISO is not publicly available to all users
+    */
+   public ListISOsOptions isPrivate() {
+      this.queryParameters.replaceValues("ispublic", FALSE);
+      return this;
+   }
+
+   /**
+    * this ISO is ready to be deployed
+    */
+   public ListISOsOptions isReady() {
+      this.queryParameters.replaceValues("isready", TRUE);
+      return this;
+   }
+
+   /**
+    * this ISO is not ready to be deployed
+    */
+   public ListISOsOptions isNotReady() {
+      this.queryParameters.replaceValues("isready", FALSE);
+      return this;
+   }
+
+   /**
+    * @param keyword List by keyword
+    */
+   public ListISOsOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   /**
+    * @param name list all isos by name
+    */
+   public ListISOsOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   /**
+    * @param zoneId the ID of the zone
+    */
+   public ListISOsOptions zoneId(String zoneId) {
+      this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId));
+      return this;
+   }
+
+   public static class Builder {
+      /**
+       * @param account the account of the ISO file. Must be used with the 
domainId parameter.
+       */
+      public static ListISOsOptions accountInDomain(String account, String 
domainId) {
+         return (ListISOsOptions) new 
ListISOsOptions().accountInDomain(account, domainId);
+      }
+
+      /**
+       * the ISO is bootable
+       */
+      public static ListISOsOptions bootable() {
+         return new ListISOsOptions().bootable();
+      }
+
+      /**
+       * the ISO is bootable
+       */
+      public static ListISOsOptions notBootable() {
+         return new ListISOsOptions().notBootable();
+      }
+
+      /**
+       * @param domainId lists all available ISO files by ID of a domain. If 
used with the account parameter, lists all available ISO files for the account 
in the ID of a domain.
+       */
+      public static ListISOsOptions domainId(String domainId) {
+         return (ListISOsOptions) new ListISOsOptions().domainId(domainId);
+      }
+
+      /**
+       * @param hypervisor the hypervisor for which to restrict the search
+       */
+      public static ListISOsOptions hypervisor(String hypervisor) {
+         return new ListISOsOptions().hypervisor(hypervisor);
+      }
+
+      /**
+       * @param id list all isos by id
+       */
+      public static ListISOsOptions id(String id) {
+         return new ListISOsOptions().id(id);
+      }
+
+      /**
+       * @param projectId list ISOs in project
+       */
+      public static ListISOsOptions projectId(String projectId) {
+         return new ListISOsOptions().projectId(projectId);
+      }
+
+      /**
+       * @param isoFilter possible values are "featured", "self", 
"self-executable","executable", and "community".
+       */
+      public static ListISOsOptions isoFilter(ISO.ISOFilter isoFilter) {
+         return new ListISOsOptions().isoFilter(isoFilter);
+      }
+
+      /**
+       * the ISO is publicly available to all users
+       */
+      public static ListISOsOptions isPublic() {
+         return new ListISOsOptions().isPublic();
+      }
+
+      /**
+       * the ISO is not publicly available to all users
+       */
+      public static ListISOsOptions isPrivate() {
+         return new ListISOsOptions().isPrivate();
+      }
+
+      /**
+       * this ISO is ready to be deployed
+       */
+      public static ListISOsOptions isReady() {
+         return new ListISOsOptions().isReady();
+      }
+
+      /**
+       * this ISO is not ready to be deployed
+       */
+      public static ListISOsOptions isNotReady() {
+         return new ListISOsOptions().isNotReady();
+      }
+
+      /**
+       * @param keyword List by keyword
+       */
+      public static ListISOsOptions keyword(String keyword) {
+         return new ListISOsOptions().keyword(keyword);
+      }
+
+      /**
+       * @param name list all isos by name
+       */
+      public static ListISOsOptions name(String name) {
+         return new ListISOsOptions().name(name);
+      }
+
+      /**
+       * @param zoneId the ID of the zone
+       */
+      public static ListISOsOptions zoneId(String zoneId) {
+         return new ListISOsOptions().zoneId(zoneId);
+      }
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListLoadBalancerRulesOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListLoadBalancerRulesOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListLoadBalancerRulesOptions.java
new file mode 100644
index 0000000..78a2315
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListLoadBalancerRulesOptions.java
@@ -0,0 +1,198 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what load balancer rules are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api/user/listLoadBalancerRules.html";
+ *      />
+ */
+public class ListLoadBalancerRulesOptions extends AccountInDomainOptions {
+
+   public static final ListLoadBalancerRulesOptions NONE = new 
ListLoadBalancerRulesOptions();
+
+   /**
+    * @param id
+    *           Lists rule with the specified ID.
+    */
+   public ListLoadBalancerRulesOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param name
+    *           the name of the load balancer rule
+    */
+   public ListLoadBalancerRulesOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   /**
+    * @param publicIPId
+    *           the public IP address id of the load balancer rule
+    */
+   public ListLoadBalancerRulesOptions publicIPId(String publicIPId) {
+      this.queryParameters.replaceValues("publicipid", 
ImmutableSet.of(publicIPId + ""));
+      return this;
+   }
+
+   /**
+    * @param virtualMachineId
+    *           the ID of the virtual machine of the load balancer rule
+    */
+   public ListLoadBalancerRulesOptions virtualMachineId(String 
virtualMachineId) {
+      this.queryParameters.replaceValues("virtualmachineid", 
ImmutableSet.of(virtualMachineId + ""));
+      return this;
+   }
+
+   /**
+    * @param zoneId the availability zone ID
+    */
+   public ListLoadBalancerRulesOptions zoneId(String zoneId) {
+      this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + 
""));
+      return this;
+   }
+
+   /**
+    * @param projectId the project ID
+    */
+   public ListLoadBalancerRulesOptions projectId(String projectId) {
+      this.queryParameters.replaceValues("projectid", 
ImmutableSet.of(projectId + ""));
+      return this;
+   }
+
+   /**
+    * @param page the number of the page
+    */
+   public ListLoadBalancerRulesOptions page(long page) {
+      this.queryParameters.replaceValues("page", ImmutableSet.of(page + ""));
+      return this;
+   }
+
+   /**
+    * @param pageSize
+    */
+   public ListLoadBalancerRulesOptions pageSize(long pageSize) {
+      this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize 
+ ""));
+      return this;
+   }
+
+   public static class Builder {
+
+      /**
+       * @see ListLoadBalancerRulesOptions#accountInDomain
+       */
+      public static ListLoadBalancerRulesOptions accountInDomain(String 
account, String domain) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.accountInDomain(account, domain);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#publicIPId
+       */
+      public static ListLoadBalancerRulesOptions publicIPId(String publicIPId) 
{
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.publicIPId(publicIPId);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#domainId
+       */
+      public static ListLoadBalancerRulesOptions domainId(String id) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.domainId(id);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#name
+       */
+      public static ListLoadBalancerRulesOptions name(String name) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.name(name);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#id
+       */
+      public static ListLoadBalancerRulesOptions id(String id) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#virtualMachineId
+       */
+      public static ListLoadBalancerRulesOptions virtualMachineId(String 
virtualMachineId) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.virtualMachineId(virtualMachineId);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#zoneId
+       */
+      public static ListLoadBalancerRulesOptions zoneId(String zoneId) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.zoneId(zoneId);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#projectId(String)
+       */
+      public static ListLoadBalancerRulesOptions projectId(String projectId) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.projectId(projectId);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#page
+       */
+      public static ListLoadBalancerRulesOptions page(long page) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.page(page);
+      }
+
+      /**
+       * @see ListLoadBalancerRulesOptions#pageSize
+       */
+      public static ListLoadBalancerRulesOptions pageSize(long pageSize) {
+         ListLoadBalancerRulesOptions options = new 
ListLoadBalancerRulesOptions();
+         return options.pageSize(pageSize);
+      }
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListLoadBalancerRulesOptions accountInDomain(String account, String 
domain) {
+      return 
ListLoadBalancerRulesOptions.class.cast(super.accountInDomain(account, domain));
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListLoadBalancerRulesOptions domainId(String domainId) {
+      return ListLoadBalancerRulesOptions.class.cast(super.domainId(domainId));
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworkOfferingsOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworkOfferingsOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworkOfferingsOptions.java
new file mode 100644
index 0000000..292f180
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworkOfferingsOptions.java
@@ -0,0 +1,191 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.cloudstack.domain.NetworkOfferingAvailabilityType;
+import org.jclouds.cloudstack.domain.TrafficType;
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what network offerings are returned
+ * 
+ * @see <a href=
+ *      
"http://download.cloud.com/releases/2.2.0/api_2.2.12/user/listNetworkOfferings.html";
+ *      />
+ */
+public class ListNetworkOfferingsOptions extends BaseHttpRequestOptions {
+
+   public static final ListNetworkOfferingsOptions NONE = new 
ListNetworkOfferingsOptions();
+
+   /**
+    * @param zoneId
+    *           list network offerings available for network creation in 
specific zone
+    */
+   public ListNetworkOfferingsOptions zoneId(String zoneId) {
+      this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + 
""));
+      return this;
+   }
+   
+   /**
+    * @param id
+    *           the ID of the network offering
+    */
+   public ListNetworkOfferingsOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+   
+   /**
+    * @param name
+    *           the network offering name
+    */
+   public ListNetworkOfferingsOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   /**
+    * @param displayText
+    *           network offerings by display text
+    */
+   public ListNetworkOfferingsOptions displayText(String displayText) {
+      this.queryParameters.replaceValues("displaytext", 
ImmutableSet.of(displayText));
+      return this;
+   }
+
+   /**
+    * @param availability
+    *           the availability of network offering. Default value is Required
+    */
+   public ListNetworkOfferingsOptions 
availability(NetworkOfferingAvailabilityType availability) {
+      this.queryParameters.replaceValues("availability", 
ImmutableSet.of(availability.toString()));
+      return this;
+   }
+
+   /**
+    * @param isDefault
+    *           true if network offering is default, false otherwise
+    */
+   public ListNetworkOfferingsOptions isDefault(boolean isDefault) {
+      this.queryParameters.replaceValues("isdefault", 
ImmutableSet.of(isDefault + ""));
+      return this;
+   }
+
+   /**
+    * @param isShared
+    *           true if network offering is shared, false otherwise
+    */
+   public ListNetworkOfferingsOptions isShared(boolean isShared) {
+      this.queryParameters.replaceValues("isshared", ImmutableSet.of(isShared 
+ ""));
+      return this;
+   }
+
+   /**
+    * @param specifyVLAN
+    *           True if we allow the network supports vlan, false otherwise. If
+    *           you create network using this offering, you must specify vlan.
+    */
+   public ListNetworkOfferingsOptions specifyVLAN(boolean specifyVLAN) {
+      this.queryParameters.replaceValues("specifyvlan", 
ImmutableSet.of(specifyVLAN + ""));
+      return this;
+   }
+
+   /**
+    * @param trafficType
+    *           type of the traffic
+    */
+   public ListNetworkOfferingsOptions trafficType(TrafficType trafficType) {
+      this.queryParameters.replaceValues("traffictype", 
ImmutableSet.of(trafficType.toString()));
+      return this;
+   }
+
+   public static class Builder {
+      /**
+       * @see ListNetworkOfferingsOptions#specifyVLAN
+       */
+      public static ListNetworkOfferingsOptions specifyVLAN(boolean 
specifyVLAN) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.specifyVLAN(specifyVLAN);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#isDefault
+       */
+      public static ListNetworkOfferingsOptions isDefault(boolean isDefault) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.isDefault(isDefault);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#isShared
+       */
+      public static ListNetworkOfferingsOptions isShared(boolean isShared) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.isShared(isShared);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#displayText
+       */
+      public static ListNetworkOfferingsOptions displayText(String 
displayText) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.displayText(displayText);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#name
+       */
+      public static ListNetworkOfferingsOptions name(String name) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.name(name);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#availability
+       */
+      public static ListNetworkOfferingsOptions 
availability(NetworkOfferingAvailabilityType availability) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.availability(availability);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#id
+       */
+      public static ListNetworkOfferingsOptions id(String id) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#zoneId
+       */
+      public static ListNetworkOfferingsOptions zoneId(String zoneId) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.zoneId(zoneId);
+      }
+
+      /**
+       * @see ListNetworkOfferingsOptions#trafficType
+       */
+      public static ListNetworkOfferingsOptions trafficType(TrafficType 
trafficType) {
+         ListNetworkOfferingsOptions options = new 
ListNetworkOfferingsOptions();
+         return options.trafficType(trafficType);
+      }
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworksOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworksOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworksOptions.java
new file mode 100644
index 0000000..94e9de7
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListNetworksOptions.java
@@ -0,0 +1,207 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.cloudstack.domain.NetworkType;
+import org.jclouds.cloudstack.domain.TrafficType;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what networks information is returned
+ * 
+ * @see <a
+ *      
href="http://download.cloud.com/releases/2.2.0/api/user/listNetworks.html";
+ *      />
+ */
+public class ListNetworksOptions extends AccountInDomainOptions {
+
+   public static final ListNetworksOptions NONE = new ListNetworksOptions();
+
+   /**
+    * @param isDefault
+    *           true if network is default, false otherwise
+    */
+   public ListNetworksOptions isDefault(boolean isDefault) {
+      this.queryParameters.replaceValues("isdefault", 
ImmutableSet.of(isDefault + ""));
+      return this;
+   }
+
+   /**
+    * @param isShared
+    *           true if network is shared, false otherwise
+    */
+   public ListNetworksOptions isShared(boolean isShared) {
+      this.queryParameters.replaceValues("isshared", ImmutableSet.of(isShared 
+ ""));
+      return this;
+   }
+
+   /**
+    * @param isSystem
+    *           true if network is system, false otherwise
+    */
+   public ListNetworksOptions isSystem(boolean isSystem) {
+      this.queryParameters.replaceValues("issystem", ImmutableSet.of(isSystem 
+ ""));
+      return this;
+   }
+
+   /**
+    * @param type
+    *           the type of the network
+    */
+   public ListNetworksOptions type(NetworkType type) {
+      this.queryParameters.replaceValues("type", 
ImmutableSet.of(type.toString()));
+      return this;
+   }
+
+   /**
+    * @param id
+    *           list networks by id
+    */
+   public ListNetworksOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param zoneId
+    *           the Zone ID of the network
+    */
+   public ListNetworksOptions zoneId(String zoneId) {
+      this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + 
""));
+      return this;
+
+   }
+
+   /**
+    * @param projectId
+    *           the project ID of the network
+    */
+   public ListNetworksOptions projectId(String projectId) {
+      this.queryParameters.replaceValues("projectid", 
ImmutableSet.of(projectId + ""));
+      return this;
+
+   }
+
+   /**
+    * @param trafficType
+    *           type of the traffic
+    */
+   public ListNetworksOptions trafficType(TrafficType trafficType) {
+      this.queryParameters.replaceValues("traffictype", 
ImmutableSet.of(trafficType.toString()));
+      return this;
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListNetworksOptions accountInDomain(String account, String domain) {
+      return ListNetworksOptions.class.cast(super.accountInDomain(account, 
domain));
+   }
+
+   /**
+    * {@inheritDoc}
+    */
+   @Override
+   public ListNetworksOptions domainId(String domainId) {
+      return ListNetworksOptions.class.cast(super.domainId(domainId));
+   }
+
+   public static class Builder {
+      /**
+       * @see ListNetworksOptions#isDefault
+       */
+      public static ListNetworksOptions isDefault(boolean isDefault) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.isDefault(isDefault);
+      }
+
+      /**
+       * @see ListNetworksOptions#isShared
+       */
+      public static ListNetworksOptions isShared(boolean isShared) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.isShared(isShared);
+      }
+
+      /**
+       * @see ListNetworksOptions#isSystem
+       */
+      public static ListNetworksOptions isSystem(boolean isSystem) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.isSystem(isSystem);
+      }
+
+      /**
+       * @see ListNetworksOptions#type
+       */
+      public static ListNetworksOptions type(NetworkType type) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.type(type);
+      }
+
+      /**
+       * @see ListNetworksOptions#id
+       */
+      public static ListNetworksOptions id(String id) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListNetworksOptions#zoneId
+       */
+      public static ListNetworksOptions zoneId(String id) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.zoneId(id);
+      }
+
+      /**
+       * @see ListNetworksOptions#projectId(String)
+       */
+      public static ListNetworksOptions projectId(String id) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.projectId(id);
+      }
+
+      /**
+       * @see ListNetworksOptions#trafficType
+       */
+      public static ListNetworksOptions trafficType(TrafficType trafficType) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.trafficType(trafficType);
+      }
+
+      /**
+       * @see ListNetworksOptions#accountInDomain
+       */
+      public static ListNetworksOptions accountInDomain(String account, String 
domain) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.accountInDomain(account, domain);
+      }
+
+      /**
+       * @see ListNetworksOptions#domainId
+       */
+      public static ListNetworksOptions domainId(String domainId) {
+         ListNetworksOptions options = new ListNetworksOptions();
+         return options.domainId(domainId);
+      }
+   }
+
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListOSTypesOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListOSTypesOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListOSTypesOptions.java
new file mode 100644
index 0000000..74329bf
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListOSTypesOptions.java
@@ -0,0 +1,70 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options used to control what OSType information is returned
+ * 
+ * @see <a
+ *      
href="http://download.cloud.com/releases/2.2.0/api/user/listOsTypes.html";
+ *      />
+ */
+public class ListOSTypesOptions extends BaseHttpRequestOptions {
+
+   public static final ListOSTypesOptions NONE = new ListOSTypesOptions();
+
+   /**
+    * @param id
+    *           list by Os type Id
+    */
+   public ListOSTypesOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   /**
+    * @param OSCategoryId
+    *           list by Os Category id
+    */
+   public ListOSTypesOptions OSCategoryId(String OSCategoryId) {
+      this.queryParameters.replaceValues("oscategoryid", 
ImmutableSet.of(OSCategoryId + ""));
+      return this;
+   }
+
+   public static class Builder {
+      /**
+       * @see ListOSTypesOptions#id
+       */
+      public static ListOSTypesOptions id(String id) {
+         ListOSTypesOptions options = new ListOSTypesOptions();
+         return options.id(id);
+      }
+
+      /**
+       * @see ListOSTypesOptions#OSCategoryId
+       */
+      public static ListOSTypesOptions OSCategoryId(String id) {
+         ListOSTypesOptions options = new ListOSTypesOptions();
+         return options.OSCategoryId(id);
+      }
+
+   }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/86fd5cf2/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPodsOptions.java
----------------------------------------------------------------------
diff --git 
a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPodsOptions.java
 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPodsOptions.java
new file mode 100644
index 0000000..db5bd89
--- /dev/null
+++ 
b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPodsOptions.java
@@ -0,0 +1,80 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jclouds.cloudstack.options;
+
+import org.jclouds.cloudstack.domain.AllocationState;
+import org.jclouds.http.options.BaseHttpRequestOptions;
+
+import com.google.common.collect.ImmutableSet;
+
+/**
+ * Options to the GlobalPodApi.listPods API call.
+ */
+public class ListPodsOptions extends BaseHttpRequestOptions {
+
+   public static final ListPodsOptions NONE = new ListPodsOptions();
+   
+   public static class Builder {
+
+      public static ListPodsOptions allocationState(AllocationState 
allocationState) {
+         return new ListPodsOptions().allocationState(allocationState);
+      }
+
+      public static ListPodsOptions id(String id) {
+         return new ListPodsOptions().id(id);
+      }
+
+      public static ListPodsOptions keyword(String keyword) {
+         return new ListPodsOptions().keyword(keyword);
+      }
+
+      public static ListPodsOptions name(String name) {
+         return new ListPodsOptions().name(name);
+      }
+
+      public static ListPodsOptions zoneId(String zoneId) {
+         return new ListPodsOptions().zoneId(zoneId);
+      }
+
+   }
+
+   public ListPodsOptions allocationState(AllocationState allocationState) {
+      this.queryParameters.replaceValues("allocationstate", 
ImmutableSet.of(allocationState.toString()));
+      return this;
+   }
+
+   public ListPodsOptions id(String id) {
+      this.queryParameters.replaceValues("id", ImmutableSet.of(id + ""));
+      return this;
+   }
+
+   public ListPodsOptions keyword(String keyword) {
+      this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword));
+      return this;
+   }
+
+   public ListPodsOptions name(String name) {
+      this.queryParameters.replaceValues("name", ImmutableSet.of(name));
+      return this;
+   }
+
+   public ListPodsOptions zoneId(String zoneId) {
+      this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + 
""));
+      return this;
+   }
+
+}

Reply via email to