// Copyright 2012 Citrix Systems, Inc. Licensed under the // Apache License, Version 2.0 (the "License"); you may not use this // file except in compliance with the License. Citrix Systems, Inc. // reserves all rights not expressly granted by 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. // // Automatically generated by addcopyright.py at 04/03/2012 package com.cloud.api; import java.text.DecimalFormat; import java.util.EnumSet; import java.util.List; import com.cloud.api.ApiConstants.HostDetails; import com.cloud.api.ApiConstants.VMDetails; import com.cloud.api.commands.QueryAsyncJobResultCmd; import com.cloud.api.response.AccountResponse; import com.cloud.api.response.AsyncJobResponse; import com.cloud.api.response.CapacityResponse; import com.cloud.api.response.ClusterResponse; import com.cloud.api.response.ConfigurationResponse; import com.cloud.api.response.CreateCmdResponse; import com.cloud.api.response.DiskOfferingResponse; import com.cloud.api.response.DomainResponse; import com.cloud.api.response.DomainRouterResponse; import com.cloud.api.response.EventResponse; import com.cloud.api.response.ExtractResponse; import com.cloud.api.response.FirewallResponse; import com.cloud.api.response.FirewallRuleResponse; import com.cloud.api.response.HostResponse; import com.cloud.api.response.HypervisorCapabilitiesResponse; import com.cloud.api.response.IPAddressResponse; import com.cloud.api.response.InstanceGroupResponse; import com.cloud.api.response.IpForwardingRuleResponse; import com.cloud.api.response.LBStickinessResponse; import com.cloud.api.response.LDAPConfigResponse; import com.cloud.api.response.ListResponse; import com.cloud.api.response.LoadBalancerResponse; import com.cloud.api.response.NetworkOfferingResponse; import com.cloud.api.response.NetworkResponse; import com.cloud.api.response.PhysicalNetworkResponse; import com.cloud.api.response.PodResponse; import com.cloud.api.response.ProjectAccountResponse; import com.cloud.api.response.ProjectInvitationResponse; import com.cloud.api.response.ProjectResponse; import com.cloud.api.response.ProviderResponse; import com.cloud.api.response.RemoteAccessVpnResponse; import com.cloud.api.response.ResourceCountResponse; import com.cloud.api.response.ResourceLimitResponse; import com.cloud.api.response.SecurityGroupResponse; import com.cloud.api.response.ServiceOfferingResponse; import com.cloud.api.response.ServiceResponse; import com.cloud.api.response.SnapshotPolicyResponse; import com.cloud.api.response.SnapshotResponse; import com.cloud.api.response.StorageNetworkIpRangeResponse; import com.cloud.api.response.StoragePoolResponse; import com.cloud.api.response.SwiftResponse; import com.cloud.api.response.SystemVmInstanceResponse; import com.cloud.api.response.SystemVmResponse; import com.cloud.api.response.TemplatePermissionsResponse; import com.cloud.api.response.TemplateResponse; import com.cloud.api.response.TrafficTypeResponse; import com.cloud.api.response.UserResponse; import com.cloud.api.response.UserVmResponse; import com.cloud.api.response.VirtualRouterProviderResponse; import com.cloud.api.response.VlanIpRangeResponse; import com.cloud.api.response.VolumeResponse; import com.cloud.api.response.VpnUsersResponse; import com.cloud.api.response.ZoneResponse; import com.cloud.async.AsyncJob; import com.cloud.capacity.Capacity; import com.cloud.configuration.Configuration; import com.cloud.configuration.ResourceCount; import com.cloud.configuration.ResourceLimit; import com.cloud.dc.DataCenter; import com.cloud.dc.Pod; import com.cloud.dc.StorageNetworkIpRange; import com.cloud.dc.Vlan; import com.cloud.domain.Domain; import com.cloud.event.Event; import com.cloud.host.Host; import com.cloud.hypervisor.HypervisorCapabilities; import com.cloud.network.IpAddress; import com.cloud.network.Network; import com.cloud.network.Network.Service; import com.cloud.network.PhysicalNetwork; import com.cloud.network.PhysicalNetworkServiceProvider; import com.cloud.network.PhysicalNetworkTrafficType; import com.cloud.network.RemoteAccessVpn; import com.cloud.network.VirtualRouterProvider; import com.cloud.network.VpnUser; import com.cloud.network.router.VirtualRouter; import com.cloud.network.rules.FirewallRule; import com.cloud.network.rules.LoadBalancer; import com.cloud.network.rules.PortForwardingRule; import com.cloud.network.rules.StaticNatRule; import com.cloud.network.rules.StickinessPolicy; import com.cloud.network.security.SecurityGroup; import com.cloud.network.security.SecurityGroupRules; import com.cloud.network.security.SecurityRule; import com.cloud.offering.DiskOffering; import com.cloud.offering.NetworkOffering; import com.cloud.offering.ServiceOffering; import com.cloud.org.Cluster; import com.cloud.projects.Project; import com.cloud.projects.ProjectAccount; import com.cloud.projects.ProjectInvitation; import com.cloud.storage.Snapshot; import com.cloud.storage.StoragePool; import com.cloud.storage.Swift; import com.cloud.storage.Volume; import com.cloud.storage.snapshot.SnapshotPolicy; import com.cloud.template.VirtualMachineTemplate; import com.cloud.user.Account; import com.cloud.user.User; import com.cloud.user.UserAccount; import com.cloud.uservm.UserVm; import com.cloud.vm.InstanceGroup; import com.cloud.vm.VirtualMachine; public interface ResponseGenerator { UserResponse createUserResponse(UserAccount user); AccountResponse createAccountResponse(Account account); DomainResponse createDomainResponse(Domain domain); DiskOfferingResponse createDiskOfferingResponse(DiskOffering offering); ResourceLimitResponse createResourceLimitResponse(ResourceLimit limit); ResourceCountResponse createResourceCountResponse(ResourceCount resourceCount); ServiceOfferingResponse createServiceOfferingResponse(ServiceOffering offering); ConfigurationResponse createConfigurationResponse(Configuration cfg); SnapshotResponse createSnapshotResponse(Snapshot snapshot); SnapshotPolicyResponse createSnapshotPolicyResponse(SnapshotPolicy policy); List<UserVmResponse> createUserVmResponse(String objectName, UserVm... userVms); List<UserVmResponse> createUserVmResponse(String objectName, EnumSet<VMDetails> details, UserVm... userVms); SystemVmResponse createSystemVmResponse(VirtualMachine systemVM); DomainRouterResponse createDomainRouterResponse(VirtualRouter router); HostResponse createHostResponse(Host host, EnumSet<HostDetails> details); HostResponse createHostResponse(Host host); VlanIpRangeResponse createVlanIpRangeResponse(Vlan vlan); IPAddressResponse createIPAddressResponse(IpAddress ipAddress); LoadBalancerResponse createLoadBalancerResponse(LoadBalancer loadBalancer); LBStickinessResponse createLBStickinessPolicyResponse(List<? extends StickinessPolicy> stickinessPolicies, LoadBalancer lb); LBStickinessResponse createLBStickinessPolicyResponse(StickinessPolicy stickinessPolicy, LoadBalancer lb); PodResponse createPodResponse(Pod pod, Boolean showCapacities); ZoneResponse createZoneResponse(DataCenter dataCenter, Boolean showCapacities); VolumeResponse createVolumeResponse(Volume volume); InstanceGroupResponse createInstanceGroupResponse(InstanceGroup group); StoragePoolResponse createStoragePoolResponse(StoragePool pool); ClusterResponse createClusterResponse(Cluster cluster, Boolean showCapacities); FirewallRuleResponse createPortForwardingRuleResponse(PortForwardingRule fwRule); IpForwardingRuleResponse createIpForwardingRuleResponse(StaticNatRule fwRule); User findUserById(Long userId); UserVm findUserVmById(Long vmId); Volume findVolumeById(Long volumeId); Account findAccountByNameDomain(String accountName, Long domainId); VirtualMachineTemplate findTemplateById(Long templateId); Host findHostById(Long hostId); List<TemplateResponse> createTemplateResponses(long templateId, long zoneId, boolean readyOnly); VpnUsersResponse createVpnUserResponse(VpnUser user); RemoteAccessVpnResponse createRemoteAccessVpnResponse(RemoteAccessVpn vpn); List<TemplateResponse> createTemplateResponses(long templateId, Long zoneId, boolean readyOnly); List<TemplateResponse> createTemplateResponses(long templateId, Long snapshotId, Long volumeId, boolean readyOnly); ListResponse<SecurityGroupResponse> createSecurityGroupResponses(List<? extends SecurityGroupRules> networkGroups); SecurityGroupResponse createSecurityGroupResponseFromSecurityGroupRule(List<? extends SecurityRule> SecurityRules); SecurityGroupResponse createSecurityGroupResponse(SecurityGroup group); ExtractResponse createExtractResponse(Long uploadId, Long id, Long zoneId, Long accountId, String mode); String toSerializedString(CreateCmdResponse response, String responseType); AsyncJobResponse createAsyncJobResponse(AsyncJob job); EventResponse createEventResponse(Event event); TemplateResponse createIsoResponse(VirtualMachineTemplate result); List<CapacityResponse> createCapacityResponse(List<? extends Capacity> result, DecimalFormat format); TemplatePermissionsResponse createTemplatePermissionsResponse(List<String> accountNames, Long id, boolean isAdmin); AsyncJobResponse queryJobResult(QueryAsyncJobResultCmd cmd); NetworkOfferingResponse createNetworkOfferingResponse(NetworkOffering offering); NetworkResponse createNetworkResponse(Network network); UserResponse createUserResponse(User user); AccountResponse createUserAccountResponse(UserAccount user); Long getSecurityGroupId(String groupName, long accountId); List<TemplateResponse> createIsoResponses(long isoId, Long zoneId, boolean readyOnly); ProjectResponse createProjectResponse(Project project); List<TemplateResponse> createIsoResponses(VirtualMachineTemplate iso, long zoneId, boolean readyOnly); List<TemplateResponse> createTemplateResponses(long templateId, Long vmId); FirewallResponse createFirewallResponse(FirewallRule fwRule); HypervisorCapabilitiesResponse createHypervisorCapabilitiesResponse(HypervisorCapabilities hpvCapabilities); ProjectAccountResponse createProjectAccountResponse(ProjectAccount projectAccount); ProjectInvitationResponse createProjectInvitationResponse(ProjectInvitation invite); SystemVmInstanceResponse createSystemVmInstanceResponse(VirtualMachine systemVM); SwiftResponse createSwiftResponse(Swift swift); PhysicalNetworkResponse createPhysicalNetworkResponse(PhysicalNetwork result); ServiceResponse createNetworkServiceResponse(Service service); ProviderResponse createNetworkServiceProviderResponse(PhysicalNetworkServiceProvider result); TrafficTypeResponse createTrafficTypeResponse(PhysicalNetworkTrafficType result); VirtualRouterProviderResponse createVirtualRouterProviderResponse(VirtualRouterProvider result); LDAPConfigResponse createLDAPConfigResponse(String hostname, Integer port, Boolean useSSL, String queryFilter, String baseSearch, String dn); StorageNetworkIpRangeResponse createStorageNetworkIpRangeResponse(StorageNetworkIpRange result); /** * @param tableName TODO * @param token * @return */ Long getIdentiyId(String tableName, String token); }