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/ListPortForwardingRulesOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPortForwardingRulesOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPortForwardingRulesOptions.java new file mode 100644 index 0000000..b551f05 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPortForwardingRulesOptions.java @@ -0,0 +1,118 @@ +/* + * 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 port forwarding rules are returned + * + * @see <a href= + * "http://download.cloud.com/releases/2.2.0/api_2.2.12/global_admin/listPortForwardingRules.html" + * /> + */ +public class ListPortForwardingRulesOptions extends AccountInDomainOptions { + + public static final ListPortForwardingRulesOptions NONE = new ListPortForwardingRulesOptions(); + + /** + * @param id + * lists rule with the specified ID + */ + public ListPortForwardingRulesOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param IPAddressId + * list the rule belonging to this public ip address + */ + public ListPortForwardingRulesOptions ipAddressId(String IPAddressId) { + this.queryParameters.replaceValues("ipaddressid", ImmutableSet.of(IPAddressId + "")); + return this; + + } + + /** + * @param projectId + * list the rules in this project + */ + public ListPortForwardingRulesOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + + } + public static class Builder { + + /** + * @see ListPortForwardingRulesOptions#id + */ + public static ListPortForwardingRulesOptions id(String id) { + ListPortForwardingRulesOptions options = new ListPortForwardingRulesOptions(); + return options.id(id); + } + + /** + * @see ListPortForwardingRulesOptions#ipAddressId + */ + public static ListPortForwardingRulesOptions ipAddressId(String ipAddressId) { + ListPortForwardingRulesOptions options = new ListPortForwardingRulesOptions(); + return options.ipAddressId(ipAddressId); + } + + /** + * @see ListPortForwardingRulesOptions#projectId(String) + */ + public static ListPortForwardingRulesOptions projectId(String projectId) { + ListPortForwardingRulesOptions options = new ListPortForwardingRulesOptions(); + return options.projectId(projectId); + } + + /** + * @see ListPortForwardingRulesOptions#accountInDomain + */ + public static ListPortForwardingRulesOptions accountInDomain(String account, String domain) { + ListPortForwardingRulesOptions options = new ListPortForwardingRulesOptions(); + return options.accountInDomain(account, domain); + } + + /** + * @see ListPortForwardingRulesOptions#domainId + */ + public static ListPortForwardingRulesOptions domainId(String id) { + ListPortForwardingRulesOptions options = new ListPortForwardingRulesOptions(); + return options.domainId(id); + } + } + + /** + * {@inheritDoc} + */ + @Override + public ListPortForwardingRulesOptions accountInDomain(String account, String domain) { + return ListPortForwardingRulesOptions.class.cast(super.accountInDomain(account, domain)); + } + + /** + * {@inheritDoc} + */ + @Override + public ListPortForwardingRulesOptions domainId(String domainId) { + return ListPortForwardingRulesOptions.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/ListProjectsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListProjectsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListProjectsOptions.java new file mode 100644 index 0000000..7b0b2ff --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListProjectsOptions.java @@ -0,0 +1,170 @@ +/* + * 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 account information is returned + * + * @see <a + * href="http://download.cloud.com/releases/3.0.6/api_3.0.6/root_admin/listProjects.html" + * /> + */ +public class ListProjectsOptions extends AccountInDomainOptions { + + public static final ListProjectsOptions NONE = new ListProjectsOptions(); + + /** + * @param id + * list projects by project ID + */ + public ListProjectsOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id)); + return this; + } + + /** + * @param name + * list project by project name + */ + public ListProjectsOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name)); + return this; + } + + /** + * @param state + * list projects by state. Valid states are enabled, disabled, and + * locked. + */ + public ListProjectsOptions state(String state) { + this.queryParameters.replaceValues("state", ImmutableSet.of(state)); + return this; + } + + /** + * @param displayText + * list projects by displayText. + */ + public ListProjectsOptions displayText(String displayText) { + this.queryParameters.replaceValues("displaytext", ImmutableSet.of(displayText)); + return this; + } + + /** + * @param keyword + * list projects by keyword. + */ + public ListProjectsOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword)); + return this; + } + + /** + * @param recursive + * defaults to false, but if true, lists all projects from the + * parent specified by the domain id till leaves. + */ + public ListProjectsOptions recursive(boolean recursive) { + this.queryParameters.replaceValues("isrecursive", ImmutableSet.of(recursive + "")); + return this; + } + + public static class Builder { + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#accountInDomain(String, String) + */ + public static ListProjectsOptions accountInDomain(String project, String domain) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.accountInDomain(project, domain); + } + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#domainId + */ + public static ListProjectsOptions domainId(String domainId) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.domainId(domainId); + } + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#id + */ + public static ListProjectsOptions id(String id) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.id(id); + } + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#name + */ + public static ListProjectsOptions name(String name) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.name(name); + } + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#state + */ + public static ListProjectsOptions state(String state) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.state(state); + } + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#displayText(String) + */ + public static ListProjectsOptions displayText(String displayText) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.displayText(displayText); + } + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#keyword(String) + */ + public static ListProjectsOptions keyword(String keyword) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.keyword(keyword); + } + + /** + * @see org.jclouds.cloudstack.options.ListProjectsOptions#recursive + */ + public static ListProjectsOptions recursive(boolean recursive) { + ListProjectsOptions options = new ListProjectsOptions(); + return options.recursive(recursive); + } + } + + /** + * {@inheritDoc} + */ + @Override + public ListProjectsOptions accountInDomain(String account, String domain) { + return ListProjectsOptions.class.cast(super.accountInDomain(account, domain)); + } + + /** + * {@inheritDoc} + */ + @Override + public ListProjectsOptions domainId(String domainId) { + return ListProjectsOptions.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/ListPublicIPAddressesOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPublicIPAddressesOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPublicIPAddressesOptions.java new file mode 100644 index 0000000..0cb38e9 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListPublicIPAddressesOptions.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 com.google.common.collect.ImmutableSet; + +/** + * Options used to control what ip addresss information is returned + * + * @see <a href= + * "http://download.cloud.com/releases/2.2.0/api/user/listIPAddresses.html" + * /> + */ +public class ListPublicIPAddressesOptions extends AccountInDomainOptions { + + public static final ListPublicIPAddressesOptions NONE = new ListPublicIPAddressesOptions(); + + /** + * @param id + * lists ip address by id + */ + public ListPublicIPAddressesOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param allocatedOnly + * limits search results to allocated public IP addresses + */ + public ListPublicIPAddressesOptions allocatedOnly(boolean allocatedOnly) { + this.queryParameters.replaceValues("allocatedonly", ImmutableSet.of(allocatedOnly + "")); + return this; + + } + + /** + * @param networkId + * list ip addresss by networkId. + */ + public ListPublicIPAddressesOptions networkId(String networkId) { + this.queryParameters.replaceValues("networkid", ImmutableSet.of(networkId + "")); + return this; + + } + + /** + * @param projectId + * list ip addresss by project. + */ + public ListPublicIPAddressesOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + + } + + /** + * @param VLANId + * lists all public IP addresses by VLAN ID + */ + public ListPublicIPAddressesOptions VLANId(String VLANId) { + this.queryParameters.replaceValues("vlanid", ImmutableSet.of(VLANId + "")); + return this; + + } + + /** + * @param IPAddress + * lists the specified IP address + */ + public ListPublicIPAddressesOptions IPAddress(String IPAddress) { + this.queryParameters.replaceValues("ipaddress", ImmutableSet.of(IPAddress)); + return this; + } + + /** + * @param zoneId + * lists all public IP addresses by Zone ID + */ + public ListPublicIPAddressesOptions zoneId(String zoneId) { + this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + "")); + return this; + + } + + /** + * @param usesVirtualNetwork + * the virtual network for the IP address + */ + public ListPublicIPAddressesOptions usesVirtualNetwork(boolean usesVirtualNetwork) { + this.queryParameters.replaceValues("forvirtualnetwork", ImmutableSet.of(usesVirtualNetwork + "")); + return this; + } + + public static class Builder { + + /** + * @see ListPublicIPAddressesOptions#accountInDomain + */ + public static ListPublicIPAddressesOptions accountInDomain(String account, String domain) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.accountInDomain(account, domain); + } + + /** + * @see ListPublicIPAddressesOptions#IPAddress + */ + public static ListPublicIPAddressesOptions IPAddress(String IPAddress) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.IPAddress(IPAddress); + } + + /** + * @see ListPublicIPAddressesOptions#domainId + */ + public static ListPublicIPAddressesOptions domainId(String id) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.domainId(id); + } + + /** + * @see ListPublicIPAddressesOptions#id + */ + public static ListPublicIPAddressesOptions id(String id) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.id(id); + } + + /** + * @see ListPublicIPAddressesOptions#allocatedOnly + */ + public static ListPublicIPAddressesOptions allocatedOnly(boolean allocatedOnly) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.allocatedOnly(allocatedOnly); + } + + /** + * @see ListPublicIPAddressesOptions#networkId + */ + public static ListPublicIPAddressesOptions networkId(String id) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.networkId(id); + } + + /** + * @see ListPublicIPAddressesOptions#projectId(String) + */ + public static ListPublicIPAddressesOptions projectId(String id) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.projectId(id); + } + + /** + * @see ListPublicIPAddressesOptions#VLANId + */ + public static ListPublicIPAddressesOptions VLANId(String id) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.VLANId(id); + } + + /** + * @see ListPublicIPAddressesOptions#zoneId + */ + public static ListPublicIPAddressesOptions zoneId(String id) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.zoneId(id); + } + + /** + * @see ListPublicIPAddressesOptions#usesVirtualNetwork + */ + public static ListPublicIPAddressesOptions usesVirtualNetwork(boolean usesVirtualNetwork) { + ListPublicIPAddressesOptions options = new ListPublicIPAddressesOptions(); + return options.usesVirtualNetwork(usesVirtualNetwork); + } + } + + /** + * {@inheritDoc} + */ + @Override + public ListPublicIPAddressesOptions accountInDomain(String account, String domain) { + return ListPublicIPAddressesOptions.class.cast(super.accountInDomain(account, domain)); + } + + /** + * {@inheritDoc} + */ + @Override + public ListPublicIPAddressesOptions domainId(String domainId) { + return ListPublicIPAddressesOptions.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/ListResourceLimitsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListResourceLimitsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListResourceLimitsOptions.java new file mode 100644 index 0000000..d669c4d --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListResourceLimitsOptions.java @@ -0,0 +1,151 @@ +/* + * 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; + +public class ListResourceLimitsOptions extends BaseHttpRequestOptions { + public static final ListResourceLimitsOptions NONE = new ListResourceLimitsOptions(); + + /** + * Lists resource limits by account. Must be used with the domainId parameter. + * + * @param account - the account for which the resource limits are retrieved for. + * @return ListResourceLimitsOptions + */ + public ListResourceLimitsOptions account(String account, String domainId) { + this.queryParameters.replaceValues("account", ImmutableSet.of(account)); + this.queryParameters.replaceValues("domainid", ImmutableSet.of(String.valueOf(domainId))); + return this; + } + + /** + * Lists resource limits by domain ID. If used with the account parameter, + * lists resource limits for a specified account in a specified domain. + * + * @param domainId + * @return ListResourceLimitsOptions + */ + public ListResourceLimitsOptions domainId(String domainId) { + this.queryParameters.replaceValues("domainid", ImmutableSet.of(String.valueOf(domainId))); + return this; + } + + /** + * Lists resource limits by ID. + * + * @param id of the resource limit. + * @return ListResourceLimitsOptions + */ + public ListResourceLimitsOptions id(String id) { + this.queryParameters.replaceValues("account", ImmutableSet.of(String.valueOf(id))); + return this; + } + + /** + * Lists resource limits by project. + * + * @param projectId the project + * @return ListResourceLimitsOptions + */ + public ListResourceLimitsOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(String.valueOf(projectId + ""))); + return this; + } + + /** + * List by keyword + * + * @param keyword + * @return ListResourceLimitsOptions + */ + public ListResourceLimitsOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword)); + return this; + } + + /** + * Type of resource to update. Values are 0, 1, 2, 3, and 4. + * <ul> + * <li>0 - Instance. Number of instances a user can create.</li> + * <li>1 - IP. Number of public IP addresses a user can own.</li> + * <li>2 - Volume. Number of disk volumes a user can create.</li> + * <li>3 - Snapshot. Number of snapshots a user can create.</li> + * <li>4 - Template. Number of templates that a user can register/create.</li> + * </ul> + * + * @param resourceType type of the resource to query for + * @return ListResourceLimitsOptions + */ + public ListResourceLimitsOptions resourceType(int resourceType) { + this.queryParameters.replaceValues("resourcetype", ImmutableSet.of(String.valueOf(resourceType))); + return this; + } + + + public static class Builder { + /** + * @see ListResourceLimitsOptions#account(String, String) + */ + public static ListResourceLimitsOptions account(String account, String domainId) { + ListResourceLimitsOptions options = new ListResourceLimitsOptions(); + return options.account(account, domainId); + } + + /** + * @see ListResourceLimitsOptions#domainId(String) + */ + public static ListResourceLimitsOptions domainId(String domainId) { + ListResourceLimitsOptions options = new ListResourceLimitsOptions(); + return options.domainId(domainId); + } + + /** + * @see ListResourceLimitsOptions#id(String) + */ + public static ListResourceLimitsOptions id(String id) { + ListResourceLimitsOptions options = new ListResourceLimitsOptions(); + return options.id(id); + } + + /** + * @see ListResourceLimitsOptions#projectId(String) + */ + public static ListResourceLimitsOptions projectId(String projectId) { + ListResourceLimitsOptions options = new ListResourceLimitsOptions(); + return options.projectId(projectId); + } + + /** + * @see ListResourceLimitsOptions#keyword(String) + */ + public static ListResourceLimitsOptions keyword(String keyword) { + ListResourceLimitsOptions options = new ListResourceLimitsOptions(); + return options.keyword(keyword); + } + + /** + * @see ListResourceLimitsOptions#resourceType(int) + */ + public static ListResourceLimitsOptions resourceType(int resourceType) { + ListResourceLimitsOptions options = new ListResourceLimitsOptions(); + return options.resourceType(resourceType); + } + } +} 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/ListSSHKeyPairsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSSHKeyPairsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSSHKeyPairsOptions.java new file mode 100644 index 0000000..fc73828 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSSHKeyPairsOptions.java @@ -0,0 +1,63 @@ +/* + * 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; + +public class ListSSHKeyPairsOptions extends BaseHttpRequestOptions { + + public static final ListSSHKeyPairsOptions NONE = new ListSSHKeyPairsOptions(); + + /** + * @param name + * the SSHKeyPair name + */ + public ListSSHKeyPairsOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name)); + return this; + } + + /** + * @param projectId + * the project to list in + */ + public ListSSHKeyPairsOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectId", ImmutableSet.of(projectId + "")); + return this; + } + + public static class Builder { + /** + * @see ListSSHKeyPairsOptions#name + */ + public static ListSSHKeyPairsOptions name(String name) { + ListSSHKeyPairsOptions options = new ListSSHKeyPairsOptions(); + return options.name(name); + } + + /** + * @see ListSSHKeyPairsOptions#projectId(String) + */ + public static ListSSHKeyPairsOptions projectId(String projectId) { + ListSSHKeyPairsOptions options = new ListSSHKeyPairsOptions(); + return options.projectId(projectId); + } + + } +} 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/ListSecurityGroupsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSecurityGroupsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSecurityGroupsOptions.java new file mode 100644 index 0000000..d9e22c3 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSecurityGroupsOptions.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 security groups are returned + * + * @see <a href= + * "http://download.cloud.com/releases/2.2.0/api/user/listSecurityGroups.html" + * /> + */ +public class ListSecurityGroupsOptions extends AssociateIPAddressOptions { + + public static final ListSecurityGroupsOptions NONE = new ListSecurityGroupsOptions(); + + /** + * @param id + * the ID of the security group + */ + public ListSecurityGroupsOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param securityGroupName + * lists security groups by name + */ + public ListSecurityGroupsOptions named(String securityGroupName) { + this.queryParameters.replaceValues("securitygroupname", ImmutableSet.of(securityGroupName)); + return this; + } + + /** + * @param virtualMachineId + * the ID of the virtual machine. Pass this in if you want to see + * the available service offering that a virtual machine can be + * changed to. + */ + public ListSecurityGroupsOptions virtualMachineId(String virtualMachineId) { + this.queryParameters.replaceValues("virtualmachineid", ImmutableSet.of(virtualMachineId + "")); + return this; + + } + + /** + * @param projectId + * the ID of the project to search in. + */ + public ListSecurityGroupsOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + } + + public static class Builder { + + /** + * @see ListSecurityGroupsOptions#named + */ + public static ListSecurityGroupsOptions named(String securityGroupName) { + ListSecurityGroupsOptions options = new ListSecurityGroupsOptions(); + return options.named(securityGroupName); + } + + /** + * @see ListSecurityGroupsOptions#id + */ + public static ListSecurityGroupsOptions id(String id) { + ListSecurityGroupsOptions options = new ListSecurityGroupsOptions(); + return options.id(id); + } + + /** + * @see ListSecurityGroupsOptions#virtualMachineId + */ + public static ListSecurityGroupsOptions virtualMachineId(String virtualMachineId) { + ListSecurityGroupsOptions options = new ListSecurityGroupsOptions(); + return options.virtualMachineId(virtualMachineId); + } + + /** + * @see ListSecurityGroupsOptions#projectId(String) + */ + public static ListSecurityGroupsOptions projectId(String projectId) { + ListSecurityGroupsOptions options = new ListSecurityGroupsOptions(); + return options.projectId(projectId); + } + + /** + * @see DeployVirtualMachineOptions#accountInDomain + */ + public static ListSecurityGroupsOptions accountInDomain(String account, String domain) { + ListSecurityGroupsOptions options = new ListSecurityGroupsOptions(); + return options.accountInDomain(account, domain); + } + + /** + * @see DeployVirtualMachineOptions#domainId + */ + public static ListSecurityGroupsOptions domainId(String domainId) { + ListSecurityGroupsOptions options = new ListSecurityGroupsOptions(); + return options.domainId(domainId); + } + } + + /** + * {@inheritDoc} + */ + @Override + public ListSecurityGroupsOptions accountInDomain(String account, String domain) { + return ListSecurityGroupsOptions.class.cast(super.accountInDomain(account, domain)); + } + + /** + * {@inheritDoc} + */ + @Override + public ListSecurityGroupsOptions domainId(String domainId) { + return ListSecurityGroupsOptions.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/ListServiceOfferingsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListServiceOfferingsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListServiceOfferingsOptions.java new file mode 100644 index 0000000..c815fa3 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListServiceOfferingsOptions.java @@ -0,0 +1,108 @@ +/* + * 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 service offerings are returned + * + * @see <a href= + * "http://download.cloud.com/releases/2.2.0/api/user/listServiceOfferings.html" + * /> + */ +public class ListServiceOfferingsOptions extends BaseHttpRequestOptions { + + public static final ListServiceOfferingsOptions NONE = new ListServiceOfferingsOptions(); + + /** + * @param id + * the ID of the service offering + */ + public ListServiceOfferingsOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param domainId + * the ID of the domain associated with the service offering + */ + public ListServiceOfferingsOptions domainId(String domainId) { + this.queryParameters.replaceValues("domainid", ImmutableSet.of(domainId + "")); + return this; + + } + + /** + * @param name + * the service offering name + */ + public ListServiceOfferingsOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name)); + return this; + } + + /** + * @param virtualMachineId + * the ID of the virtual machine. Pass this in if you want to see + * the available service offering that a virtual machine can be + * changed to. + */ + public ListServiceOfferingsOptions virtualMachineId(String virtualMachineId) { + this.queryParameters.replaceValues("virtualmachineid", ImmutableSet.of(virtualMachineId + "")); + return this; + + } + + public static class Builder { + + /** + * @see ListServiceOfferingsOptions#name + */ + public static ListServiceOfferingsOptions name(String name) { + ListServiceOfferingsOptions options = new ListServiceOfferingsOptions(); + return options.name(name); + } + + /** + * @see ListServiceOfferingsOptions#domainId + */ + public static ListServiceOfferingsOptions domainId(String id) { + ListServiceOfferingsOptions options = new ListServiceOfferingsOptions(); + return options.domainId(id); + } + + /** + * @see ListServiceOfferingsOptions#id + */ + public static ListServiceOfferingsOptions id(String id) { + ListServiceOfferingsOptions options = new ListServiceOfferingsOptions(); + return options.id(id); + } + + /** + * @see ListServiceOfferingsOptions#virtualMachineId + */ + public static ListServiceOfferingsOptions virtualMachineId(String virtualMachineId) { + ListServiceOfferingsOptions options = new ListServiceOfferingsOptions(); + return options.virtualMachineId(virtualMachineId); + } + } +} 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/ListSnapshotPoliciesOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSnapshotPoliciesOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSnapshotPoliciesOptions.java new file mode 100644 index 0000000..2feda8b --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSnapshotPoliciesOptions.java @@ -0,0 +1,63 @@ +/* + * 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 for the Snapshot listSnapshotPolicies method. + * + * @see org.jclouds.cloudstack.features.SnapshotApi#listSnapshotPolicies + * @see org.jclouds.cloudstack.features.SnapshotApi#listSnapshotPolicies + */ +public class ListSnapshotPoliciesOptions extends AccountInDomainOptions { + + public static final ListSnapshotPoliciesOptions NONE = new ListSnapshotPoliciesOptions(); + + /** + * @param keyword List by keyword + */ + public ListSnapshotPoliciesOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword + "")); + return this; + } + + public static class Builder { + + /** + * @param account lists snapshot policies for the specified account. + */ + public static ListSnapshotPoliciesOptions accountInDomain(String account, String domainId) { + return (ListSnapshotPoliciesOptions) new ListSnapshotPoliciesOptions().accountInDomain(account, domainId); + } + + /** + * @param domainId the domain ID. + */ + public static ListSnapshotPoliciesOptions domainId(String domainId) { + return (ListSnapshotPoliciesOptions) new ListSnapshotPoliciesOptions().domainId(domainId); + } + + /** + * @param keyword List by keyword + */ + public static ListSnapshotPoliciesOptions keyword(String keyword) { + return new ListSnapshotPoliciesOptions().keyword(keyword); + } + } + +} 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/ListSnapshotsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSnapshotsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSnapshotsOptions.java new file mode 100644 index 0000000..fa366d0 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListSnapshotsOptions.java @@ -0,0 +1,171 @@ +/* + * 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.Snapshot; + +import com.google.common.collect.ImmutableSet; + +/** + * Options for the Snapshot listSnapshots method. + * + * @see org.jclouds.cloudstack.features.SnapshotApi#listSnapshots + * @see org.jclouds.cloudstack.features.SnapshotApi#listSnapshots + */ +public class ListSnapshotsOptions extends AccountInDomainOptions { + + public static final ListSnapshotsOptions NONE = new ListSnapshotsOptions(); + + /** + * @param id lists snapshot by snapshot ID + */ + public ListSnapshotsOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param interval valid values are HOURLY, DAILY, WEEKLY, and MONTHLY. + */ + public ListSnapshotsOptions interval(Snapshot.Interval interval) { + this.queryParameters.replaceValues("intervaltype", ImmutableSet.of(interval + "")); + return this; + } + + /** + * @param isRecursive defaults to false, but if true, lists all snapshots from the parent specified by the domain id till leaves. + */ + public ListSnapshotsOptions isRecursive(boolean isRecursive) { + this.queryParameters.replaceValues("isrecursive", ImmutableSet.of(isRecursive + "")); + return this; + } + + /** + * @param keyword List by keyword + */ + public ListSnapshotsOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword + "")); + return this; + } + + /** + * @param name lists snapshot by snapshot name + */ + public ListSnapshotsOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name + "")); + return this; + } + + /** + * @param snapshotType valid values are MANUAL or RECURRING. + */ + public ListSnapshotsOptions snapshotType(Snapshot.Type snapshotType) { + this.queryParameters.replaceValues("snapshottype", ImmutableSet.of(snapshotType + "")); + return this; + } + + /** + * @param volumeId the ID of the disk volume + */ + public ListSnapshotsOptions volumeId(String volumeId) { + this.queryParameters.replaceValues("volumeid", ImmutableSet.of(volumeId + "")); + return this; + } + + /** + * @param projectId the project to list in + */ + public ListSnapshotsOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + } + + public static class Builder { + + /** + * @param account lists snapshot belonging to the specified account. + * @param domainId The domain ID. + */ + public static ListSnapshotsOptions accountInDomain(String account, String domainId) { + return (ListSnapshotsOptions) new ListSnapshotsOptions().accountInDomain(account, domainId); + } + + /** + * @param domainId the domain ID. + */ + public static ListSnapshotsOptions domainId(String domainId) { + return (ListSnapshotsOptions) new ListSnapshotsOptions().domainId(domainId); + } + + /** + * @param id lists snapshot by snapshot ID + */ + public static ListSnapshotsOptions id(String id) { + return new ListSnapshotsOptions().id(id); + } + + /** + * @param interval valid values are HOURLY, DAILY, WEEKLY, and MONTHLY. + */ + public static ListSnapshotsOptions interval(Snapshot.Interval interval) { + return new ListSnapshotsOptions().interval(interval); + } + + /** + * @param isRecursive defaults to false, but if true, lists all snapshots from the parent specified by the domain id till leaves. + */ + public static ListSnapshotsOptions isRecursive(boolean isRecursive) { + return new ListSnapshotsOptions().isRecursive(isRecursive); + } + + /** + * @param keyword List by keyword + */ + public static ListSnapshotsOptions keyword(String keyword) { + return new ListSnapshotsOptions().keyword(keyword); + } + + /** + * @param name lists snapshot by snapshot name + */ + public static ListSnapshotsOptions name(String name) { + return new ListSnapshotsOptions().name(name); + } + + /** + * @param snapshotType valid values are MANUAL or RECURRING. + */ + public static ListSnapshotsOptions snapshotType(Snapshot.Type snapshotType) { + return new ListSnapshotsOptions().snapshotType(snapshotType); + } + + /** + * @param volumeId the ID of the disk volume + */ + public static ListSnapshotsOptions volumeId(String volumeId) { + return new ListSnapshotsOptions().volumeId(volumeId); + } + + /** + * @param projectId the project to list in + */ + public static ListSnapshotsOptions projectId(String projectId) { + return new ListSnapshotsOptions().projectId(projectId); + } + } + +} 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/ListStoragePoolsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListStoragePoolsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListStoragePoolsOptions.java new file mode 100644 index 0000000..4a372cb --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListStoragePoolsOptions.java @@ -0,0 +1,116 @@ +/* + * 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 to the GlobalStoragePools[Async]Client.listStoragePools API call + */ +public class ListStoragePoolsOptions extends BaseHttpRequestOptions { + + public static ListStoragePoolsOptions NONE = new ListStoragePoolsOptions(); + + public static class Builder { + + private Builder() {} + + public static ListStoragePoolsOptions clusterId(String clusterId) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.clusterId(clusterId); + } + + public static ListStoragePoolsOptions id(String id) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.id(id); + } + + public static ListStoragePoolsOptions ipAddress(String ipAddress) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.ipAddress(ipAddress); + } + + public static ListStoragePoolsOptions keyword(String keyword) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.keyword(keyword); + } + + public static ListStoragePoolsOptions name(String name) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.name(name); + } + + public static ListStoragePoolsOptions path(String path) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.path(path); + } + + public static ListStoragePoolsOptions podId(String podId) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.podId(podId); + } + + public static ListStoragePoolsOptions zoneId(String zoneId) { + ListStoragePoolsOptions options = new ListStoragePoolsOptions(); + return options.zoneId(zoneId); + } + } + + ListStoragePoolsOptions() {} + + public ListStoragePoolsOptions clusterId(String clusterId) { + this.queryParameters.replaceValues("clusterid", ImmutableSet.of(clusterId + "")); + return this; + } + + public ListStoragePoolsOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + public ListStoragePoolsOptions ipAddress(String ipAddress) { + this.queryParameters.replaceValues("ipaddress", ImmutableSet.of(ipAddress)); + return this; + } + + public ListStoragePoolsOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword)); + return this; + } + + public ListStoragePoolsOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name)); + return this; + } + public ListStoragePoolsOptions path(String path) { + this.queryParameters.replaceValues("path", ImmutableSet.of(path)); + return this; + } + + public ListStoragePoolsOptions podId(String podId) { + this.queryParameters.replaceValues("podid", ImmutableSet.of(podId + "")); + return this; + } + + public ListStoragePoolsOptions zoneId(String zoneId) { + this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + "")); + return this; + } + +} 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/ListTemplatesOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListTemplatesOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListTemplatesOptions.java new file mode 100644 index 0000000..4769920 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListTemplatesOptions.java @@ -0,0 +1,175 @@ +/* + * 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.TemplateFilter; + +import com.google.common.collect.ImmutableSet; + +/** + * Options used to control what templates information is returned + * + * @see <a + * href="http://download.cloud.com/releases/2.2.0/api/user/listTemplates.html" + * /> + */ +public class ListTemplatesOptions extends AccountInDomainOptions { + public ListTemplatesOptions() { + filter(TemplateFilter.EXECUTABLE); + } + + public static final ListTemplatesOptions NONE = new ListTemplatesOptions(); + + /** + * @param filter + * how to constrain the list + */ + public ListTemplatesOptions filter(TemplateFilter filter) { + this.queryParameters.replaceValues("templatefilter", ImmutableSet.of(filter.toString())); + return this; + } + + /** + * @param id + * the template ID + */ + public ListTemplatesOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param name + * the template name + */ + public ListTemplatesOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name)); + return this; + } + + /** + * @param zoneId + * list templates by zoneId. + */ + public ListTemplatesOptions zoneId(String zoneId) { + this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + "")); + return this; + + } + + /** + * @param projectId + * list templates by projectId. + */ + public ListTemplatesOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + + } + + /** + * @param hypervisor + * the hypervisor for which to restrict the search + */ + public ListTemplatesOptions hypervisor(String hypervisor) { + this.queryParameters.replaceValues("hypervisor", ImmutableSet.of(hypervisor)); + return this; + } + + public static class Builder { + + /** + * @see ListTemplatesOptions#filter + */ + public static ListTemplatesOptions filter(TemplateFilter filter) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.filter(filter); + } + + /** + * @see ListTemplatesOptions#domainId + */ + public static ListTemplatesOptions domainId(String id) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.domainId(id); + } + + /** + * @see ListTemplatesOptions#accountInDomain + */ + public static ListTemplatesOptions accountInDomain(String account, String domain) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.accountInDomain(account, domain); + } + + /** + * @see ListTemplatesOptions#id + */ + public static ListTemplatesOptions id(String id) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.id(id); + } + + /** + * @see ListTemplatesOptions#name + */ + public static ListTemplatesOptions name(String name) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.name(name); + } + + /** + * @see ListTemplatesOptions#zoneId + */ + public static ListTemplatesOptions zoneId(String id) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.zoneId(id); + } + + /** + * @see ListTemplatesOptions#projectId(String) + */ + public static ListTemplatesOptions projectId(String projectId) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.projectId(projectId); + } + + /** + * @see ListTemplatesOptions#hypervisor + */ + public static ListTemplatesOptions hypervisor(String hypervisor) { + ListTemplatesOptions options = new ListTemplatesOptions(); + return options.hypervisor(hypervisor); + } + } + + /** + * {@inheritDoc} + */ + @Override + public ListTemplatesOptions accountInDomain(String account, String domain) { + return ListTemplatesOptions.class.cast(super.accountInDomain(account, domain)); + } + + /** + * {@inheritDoc} + */ + @Override + public ListTemplatesOptions domainId(String domainId) { + return ListTemplatesOptions.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/ListUsageRecordsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListUsageRecordsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListUsageRecordsOptions.java new file mode 100644 index 0000000..8725226 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListUsageRecordsOptions.java @@ -0,0 +1,111 @@ +/* + * 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 to the GlobalUsageApi.listUsageOptions() API call + */ +public class ListUsageRecordsOptions extends AccountInDomainOptions { + + public static final ListUsageRecordsOptions NONE = new ListUsageRecordsOptions(); + + public static class Builder { + public static ListUsageRecordsOptions accountInDomain(String account, String domainId) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.accountInDomain(account, domainId); + } + + public static ListUsageRecordsOptions domainId(String domainId) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.domainId(domainId); + } + + public static ListUsageRecordsOptions accountId(String accountId) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.accountId(accountId); + } + + public static ListUsageRecordsOptions projectId(String projectId) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.projectId(projectId); + } + + public static ListUsageRecordsOptions keyword(String keyword) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.keyword(keyword); + } + + public static ListUsageRecordsOptions type(String type) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.type(type); + } + + public static ListUsageRecordsOptions page(String page) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.page(page); + } + + public static ListUsageRecordsOptions pageSize(String pageSize) { + ListUsageRecordsOptions options = new ListUsageRecordsOptions(); + return options.pageSize(pageSize); + } + + } + + @Override + public ListUsageRecordsOptions accountInDomain(String account, String domain) { + return (ListUsageRecordsOptions) super.accountInDomain(account, domain); + } + + @Override + public ListUsageRecordsOptions domainId(String domainId) { + return (ListUsageRecordsOptions) super.domainId(domainId); + } + + public ListUsageRecordsOptions accountId(String accountId) { + this.queryParameters.replaceValues("accountid", ImmutableSet.of(accountId + "")); + return this; + } + + public ListUsageRecordsOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + } + + public ListUsageRecordsOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword)); + return this; + } + + public ListUsageRecordsOptions type(String type) { + this.queryParameters.replaceValues("type", ImmutableSet.of(type)); + return this; + } + + public ListUsageRecordsOptions page(String page) { + this.queryParameters.replaceValues("page", ImmutableSet.of(page)); + return this; + } + + public ListUsageRecordsOptions pageSize(String pageSize) { + this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize)); + return this; + } + +} 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/ListUsersOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListUsersOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListUsersOptions.java new file mode 100644 index 0000000..e87e059 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListUsersOptions.java @@ -0,0 +1,188 @@ +/* + * 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.User; + +import com.google.common.collect.ImmutableSet; + +/** + * Options used to control what user information is returned + * + * @see <a + * href="http://download.cloud.com/releases/2.2.0/api_2.2.12/domain_admin/listUsers.html" + * /> + */ +public class ListUsersOptions extends AccountInDomainOptions { + + public static final ListUsersOptions NONE = new ListUsersOptions(); + + /** + * @param id + * list account by account ID + */ + public ListUsersOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param userName + * retrieve user by name + */ + public ListUsersOptions userName(String userName) { + this.queryParameters.replaceValues("name", ImmutableSet.of(userName)); + return this; + } + + /** + * @param state + * list accounts by state. Valid states are enabled, disabled, and + * locked. + */ + public ListUsersOptions state(User.State state) { + this.queryParameters.replaceValues("state", ImmutableSet.of(state.toString())); + return this; + } + + /** + * @param accountType + * List users by account type. Valid types include admin, + * domain-admin, read-only-admin, or user. + */ + public ListUsersOptions accountType(String accountType) { + this.queryParameters.replaceValues("accounttype", ImmutableSet.of(accountType)); + return this; + } + + /** + * @param keyword + */ + public ListUsersOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword)); + return this; + } + + /** + * @param page + * the page number + */ + public ListUsersOptions page(long page) { + this.queryParameters.replaceValues("page", ImmutableSet.of(page + "")); + return this; + } + + /** + * @param pageSize + * the number of items per page + */ + public ListUsersOptions pageSize(long pageSize) { + this.queryParameters.replaceValues("pagesize", ImmutableSet.of(pageSize + "")); + return this; + } + + + public static class Builder { + /** + * @see ListUsersOptions#id + */ + public static ListUsersOptions id(String id) { + ListUsersOptions options = new ListUsersOptions(); + return options.id(id); + } + + /** + * @see ListUsersOptions#userName(String) + */ + public static ListUsersOptions userName(String name) { + ListUsersOptions options = new ListUsersOptions(); + return options.userName(name); + } + + /** + * @see ListUsersOptions#state + */ + public static ListUsersOptions state(User.State state) { + ListUsersOptions options = new ListUsersOptions(); + return options.state(state); + } + + /** + * @see ListUsersOptions#accountType + */ + public static ListUsersOptions accountType(String accountType) { + ListUsersOptions options = new ListUsersOptions(); + return options.accountType(accountType); + } + + /** + * @see ListUsersOptions#keyword + */ + public static ListUsersOptions keyword(String keyword) { + ListUsersOptions options = new ListUsersOptions(); + return options.keyword(keyword); + } + + /** + * @see ListUsersOptions#page + */ + public static ListUsersOptions page(long page) { + ListUsersOptions options = new ListUsersOptions(); + return options.page(page); + } + + /** + * @see ListUsersOptions#pageSize + */ + public static ListUsersOptions pageSize(long pageSize) { + ListUsersOptions options = new ListUsersOptions(); + return options.pageSize(pageSize); + } + + /** + * @see ListUsersOptions#accountInDomain + */ + public static ListUsersOptions accountInDomain(String account, String domain) { + ListUsersOptions options = new ListUsersOptions(); + return options.accountInDomain(account, domain); + } + + /** + * @see ListUsersOptions#domainId + */ + public static ListUsersOptions domainId(String id) { + ListUsersOptions options = new ListUsersOptions(); + return options.domainId(id); + } + } + + /** + * {@inheritDoc} + */ + @Override + public ListUsersOptions accountInDomain(String account, String domain) { + return ListUsersOptions.class.cast(super.accountInDomain(account, domain)); + } + + /** + * {@inheritDoc} + */ + @Override + public ListUsersOptions domainId(String domainId) { + return ListUsersOptions.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/ListVMGroupsOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVMGroupsOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVMGroupsOptions.java new file mode 100644 index 0000000..3bec50f --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVMGroupsOptions.java @@ -0,0 +1,132 @@ +/* + * 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 VMGroups information is returned + * + * @see <a + * href="http://download.cloud.com/releases/2.2.8/api/user/listInstanceGroups.html" + * /> + */ +public class ListVMGroupsOptions extends BaseHttpRequestOptions { + + public static final ListVMGroupsOptions NONE = new ListVMGroupsOptions(); + + /** + * @param id list VMGroups by id + */ + public ListVMGroupsOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param account account who owns the VMGroups + */ + public ListVMGroupsOptions account(String account) { + this.queryParameters.replaceValues("account", ImmutableSet.of(account)); + return this; + } + + /** + * @param domainId domain ID of the account owning the VMGroups + */ + public ListVMGroupsOptions domainId(String domainId) { + this.queryParameters.replaceValues("domainid", ImmutableSet.of(domainId + "")); + return this; + } + + /** + * @param projectId id of the project the vm group is in + */ + public ListVMGroupsOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + } + + /** + * @param keyword keyword to search on + */ + public ListVMGroupsOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword)); + return this; + } + + /** + * @param name find a VMGroup by its name + */ + public ListVMGroupsOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name)); + return this; + } + + public static class Builder { + /** + * @see org.jclouds.cloudstack.options.ListVMGroupsOptions#id + */ + public static ListVMGroupsOptions id(String id) { + ListVMGroupsOptions options = new ListVMGroupsOptions(); + return options.id(id); + } + + /** + * @see org.jclouds.cloudstack.options.ListVMGroupsOptions#account + */ + public static ListVMGroupsOptions account(String account) { + ListVMGroupsOptions options = new ListVMGroupsOptions(); + return options.account(account); + } + + /** + * @see org.jclouds.cloudstack.options.ListVMGroupsOptions#domainId + */ + public static ListVMGroupsOptions domainId(String id) { + ListVMGroupsOptions options = new ListVMGroupsOptions(); + return options.domainId(id); + } + + /** + * @see org.jclouds.cloudstack.options.ListVMGroupsOptions#projectId(String) + */ + public static ListVMGroupsOptions projectId(String id) { + ListVMGroupsOptions options = new ListVMGroupsOptions(); + return options.projectId(id); + } + + /** + * @see org.jclouds.cloudstack.options.ListVMGroupsOptions#keyword + */ + public static ListVMGroupsOptions keyword(String keyword) { + ListVMGroupsOptions options = new ListVMGroupsOptions(); + return options.keyword(keyword); + } + + /** + * @see org.jclouds.cloudstack.options.ListVMGroupsOptions#account + */ + public static ListVMGroupsOptions name(String name) { + ListVMGroupsOptions options = new ListVMGroupsOptions(); + return options.name(name); + } + } + +} 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/ListVirtualMachinesOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVirtualMachinesOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVirtualMachinesOptions.java new file mode 100644 index 0000000..4d1c7d6 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVirtualMachinesOptions.java @@ -0,0 +1,243 @@ +/* + * 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 virtual machines information is returned + * + * @see <a href= + * "http://download.cloud.com/releases/2.2.0/api/user/listVirtualMachines.html" + * /> + */ +public class ListVirtualMachinesOptions extends AccountInDomainOptions { + + public static final ListVirtualMachinesOptions NONE = new ListVirtualMachinesOptions(); + + /** + * @param id + * the ID of the virtual machine + */ + public ListVirtualMachinesOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + /** + * @param name + * the virtual machine name + */ + public ListVirtualMachinesOptions name(String name) { + this.queryParameters.replaceValues("name", ImmutableSet.of(name)); + return this; + } + + /** + * @param state + * state of the virtual machine + */ + public ListVirtualMachinesOptions state(String state) { + this.queryParameters.replaceValues("state", ImmutableSet.of(state)); + return this; + } + + /** + * @param groupId + * list virtual machines by groupId. + */ + public ListVirtualMachinesOptions groupId(String groupId) { + this.queryParameters.replaceValues("groupid", ImmutableSet.of(groupId + "")); + return this; + + } + + /** + * @param hostId + * list virtual machines by hostId. + */ + public ListVirtualMachinesOptions hostId(String hostId) { + this.queryParameters.replaceValues("hostid", ImmutableSet.of(hostId + "")); + return this; + + } + + /** + * @param networkId + * list virtual machines by networkId. + */ + public ListVirtualMachinesOptions networkId(String networkId) { + this.queryParameters.replaceValues("networkid", ImmutableSet.of(networkId + "")); + return this; + + } + + /** + * @param podId + * list virtual machines by podId. + */ + public ListVirtualMachinesOptions podId(String podId) { + this.queryParameters.replaceValues("podid", ImmutableSet.of(podId + "")); + return this; + + } + + /** + * @param projectId + * list virtual machines by projectId. + */ + public ListVirtualMachinesOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + + } + + /** + * @param zoneId + * list virtual machines by zoneId. + */ + public ListVirtualMachinesOptions zoneId(String zoneId) { + this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + "")); + return this; + + } + + /** + * @param usesVirtualNetwork + * list by network type; true if need to list vms using Virtual + * Network, false otherwise + */ + public ListVirtualMachinesOptions usesVirtualNetwork(boolean usesVirtualNetwork) { + this.queryParameters.replaceValues("forvirtualnetwork", ImmutableSet.of(usesVirtualNetwork + "")); + return this; + } + + public static class Builder { + + /** + * @see ListVirtualMachinesOptions#accountInDomain + */ + public static ListVirtualMachinesOptions accountInDomain(String account, String domain) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.accountInDomain(account, domain); + } + + /** + * @see ListVirtualMachinesOptions#domainId + */ + public static ListVirtualMachinesOptions domainId(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.domainId(id); + } + + /** + * @see ListVirtualMachinesOptions#id + */ + public static ListVirtualMachinesOptions id(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.id(id); + } + + /** + * @see ListVirtualMachinesOptions#name + */ + public static ListVirtualMachinesOptions name(String name) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.name(name); + } + + /** + * @see ListVirtualMachinesOptions#state + */ + public static ListVirtualMachinesOptions state(String state) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.state(state); + } + + /** + * @see ListVirtualMachinesOptions#groupId + */ + public static ListVirtualMachinesOptions groupId(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.groupId(id); + } + + /** + * @see ListVirtualMachinesOptions#hostId + */ + public static ListVirtualMachinesOptions hostId(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.hostId(id); + } + + /** + * @see ListVirtualMachinesOptions#networkId + */ + public static ListVirtualMachinesOptions networkId(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.networkId(id); + } + + /** + * @see ListVirtualMachinesOptions#podId + */ + public static ListVirtualMachinesOptions podId(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.podId(id); + } + + /** + * @see ListVirtualMachinesOptions#projectId(String) + */ + public static ListVirtualMachinesOptions projectId(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.projectId(id); + } + + /** + * @see ListVirtualMachinesOptions#zoneId + */ + public static ListVirtualMachinesOptions zoneId(String id) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.zoneId(id); + } + + /** + * @see ListVirtualMachinesOptions#usesVirtualNetwork + */ + public static ListVirtualMachinesOptions usesVirtualNetwork(boolean usesVirtualNetwork) { + ListVirtualMachinesOptions options = new ListVirtualMachinesOptions(); + return options.usesVirtualNetwork(usesVirtualNetwork); + } + } + + /** + * {@inheritDoc} + */ + @Override + public ListVirtualMachinesOptions accountInDomain(String account, String domain) { + return ListVirtualMachinesOptions.class.cast(super.accountInDomain(account, domain)); + } + + /** + * {@inheritDoc} + */ + @Override + public ListVirtualMachinesOptions domainId(String domainId) { + return ListVirtualMachinesOptions.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/ListVlanIPRangesOptions.java ---------------------------------------------------------------------- diff --git a/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVlanIPRangesOptions.java b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVlanIPRangesOptions.java new file mode 100644 index 0000000..7a8b973 --- /dev/null +++ b/dependencies/jclouds/apis/cloudstack/1.8.0-stratos/src/main/java/org/jclouds/cloudstack/options/ListVlanIPRangesOptions.java @@ -0,0 +1,127 @@ +/* + * 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 to the listVLANIPRanges() API call + */ +public class ListVlanIPRangesOptions extends AccountInDomainOptions { + + public static class Builder { + + public static ListVlanIPRangesOptions accountInDomain(String account, String domainId) { + return new ListVlanIPRangesOptions().accountInDomain(account, domainId); + } + + public static ListVlanIPRangesOptions domainId(String domainId) { + return new ListVlanIPRangesOptions().domainId(domainId); + } + + public static ListVlanIPRangesOptions forVirtualNetwork(boolean forVirtualNetwork) { + return new ListVlanIPRangesOptions().forVirtualNetwork(forVirtualNetwork); + } + + public static ListVlanIPRangesOptions id(String id) { + return new ListVlanIPRangesOptions().id(id); + } + + public static ListVlanIPRangesOptions keyword(String keyword) { + return new ListVlanIPRangesOptions().keyword(keyword); + } + + public static ListVlanIPRangesOptions networkId(String networkId) { + return new ListVlanIPRangesOptions().networkId(networkId); + } + + public static ListVlanIPRangesOptions podId(String podId) { + return new ListVlanIPRangesOptions().podId(podId); + } + + public static ListVlanIPRangesOptions projectId(String projectId) { + return new ListVlanIPRangesOptions().projectId(projectId); + } + + public static ListVlanIPRangesOptions vlan(long vlan) { + return new ListVlanIPRangesOptions().vlan(vlan); + } + + public static ListVlanIPRangesOptions vlan(String vlan) { + return new ListVlanIPRangesOptions().vlan(vlan + ""); + } + + public static ListVlanIPRangesOptions zoneId(String zoneId) { + return new ListVlanIPRangesOptions().zoneId(zoneId); + } + } + + @Override + public ListVlanIPRangesOptions accountInDomain(String account, String domainId) { + return (ListVlanIPRangesOptions) super.accountInDomain(account, domainId); + } + + @Override + public ListVlanIPRangesOptions domainId(String domainId) { + return (ListVlanIPRangesOptions) super.domainId(domainId); + } + + public ListVlanIPRangesOptions forVirtualNetwork(boolean forVirtualNetwork) { + this.queryParameters.replaceValues("forvirtualnetwork", ImmutableSet.of(forVirtualNetwork + "")); + return this; + } + + public ListVlanIPRangesOptions id(String id) { + this.queryParameters.replaceValues("id", ImmutableSet.of(id + "")); + return this; + } + + public ListVlanIPRangesOptions keyword(String keyword) { + this.queryParameters.replaceValues("keyword", ImmutableSet.of(keyword)); + return this; + } + + public ListVlanIPRangesOptions networkId(String networkId) { + this.queryParameters.replaceValues("networkid", ImmutableSet.of(networkId + "")); + return this; + } + + public ListVlanIPRangesOptions podId(String podId) { + this.queryParameters.replaceValues("podid", ImmutableSet.of(podId + "")); + return this; + } + + public ListVlanIPRangesOptions projectId(String projectId) { + this.queryParameters.replaceValues("projectid", ImmutableSet.of(projectId + "")); + return this; + } + + public ListVlanIPRangesOptions vlan(String vlan) { + this.queryParameters.replaceValues("vlan", ImmutableSet.of(vlan)); + return this; + } + + public ListVlanIPRangesOptions vlan(long vlan) { + this.queryParameters.replaceValues("vlan", ImmutableSet.of(vlan + "")); + return this; + } + + public ListVlanIPRangesOptions zoneId(String zoneId) { + this.queryParameters.replaceValues("zoneid", ImmutableSet.of(zoneId + "")); + return this; + } +}
