View Javadoc

1   /**
2    * Licensed to jclouds, Inc. (jclouds) under one or more
3    * contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  jclouds licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.jclouds.trmk.ecloud.domain.internal;
20  
21  import static com.google.common.base.Preconditions.checkNotNull;
22  
23  import java.net.URI;
24  import java.util.Map;
25  
26  import org.jclouds.trmk.ecloud.domain.ECloudOrg;
27  import org.jclouds.trmk.vcloud_0_8.domain.ReferenceType;
28  import org.jclouds.trmk.vcloud_0_8.domain.internal.OrgImpl;
29  
30  /**
31   * Locations of resources in a Terremark eCloud Org
32   * 
33   * @author Adrian Cole
34   * 
35   */
36  public class ECloudOrgImpl extends OrgImpl implements ECloudOrg {
37  
38     private final ReferenceType dataCentersList;
39     private final ReferenceType deviceTags;
40     private final ReferenceType vAppCatalog;
41  
42     public ECloudOrgImpl(String name, String type, URI id, String description, Map<String, ReferenceType> catalogs,
43           Map<String, ReferenceType> vdcs, Map<String, ReferenceType> tasksLists, ReferenceType keys,
44           ReferenceType dataCentersList, ReferenceType deviceTags, ReferenceType vAppCatalog) {
45        super(name, type, id, description, catalogs, vdcs, tasksLists, keys);
46        this.deviceTags = checkNotNull(deviceTags, "deviceTags");
47        this.vAppCatalog = checkNotNull(vAppCatalog, "vAppCatalog");
48        this.dataCentersList = checkNotNull(dataCentersList, "dataCentersList");
49     }
50  
51     @Override
52     public ReferenceType getDataCenters() {
53        return dataCentersList;
54     }
55  
56     @Override
57     public ReferenceType getTags() {
58        return deviceTags;
59     }
60  
61     @Override
62     public ReferenceType getVAppCatalog() {
63        return vAppCatalog;
64     }
65  
66  }