View Javadoc

1   /**
2    *
3    * Copyright (C) 2011 Cloud Conscious, LLC. <info@cloudconscious.com>
4    *
5    * ====================================================================
6    * Licensed under the Apache License, Version 2.0 (the "License");
7    * you may not use this file except in compliance with the License.
8    * 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, software
13   * distributed under the License is distributed on an "AS IS" BASIS,
14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   * See the License for the specific language governing permissions and
16   * limitations under the License.
17   * ====================================================================
18   */
19  package org.jclouds.vcloud.domain.network;
20  
21  import java.util.Set;
22  
23  import javax.annotation.Nullable;
24  
25  import org.jclouds.vcloud.domain.ReferenceType;
26  import org.jclouds.vcloud.domain.network.firewall.FirewallRule;
27  import org.jclouds.vcloud.domain.network.nat.rules.PortForwardingRule;
28  
29  /**
30   * 
31   * A network that is available in a vDC.
32   * 
33   * @author Adrian Cole
34   */
35  public interface VCloudExpressNetwork extends ReferenceType {
36     /**
37      * 
38      * @return Description of the network
39      */
40     String getDescription();
41  
42     /**
43      * @return IP addresses of the network’s DNS servers.
44      */
45     Set<String> getDnsServers();
46  
47     /**
48      * 
49      * 
50      * @return The IP address of the network’s primary gateway
51      */
52     String getGateway();
53  
54     /**
55      * *
56      * 
57      * @return the network’s subnet mask
58      */
59     String getNetmask();
60  
61     /**
62      * return the network’s fence modes.
63      */
64     Set<FenceMode> getFenceModes();
65  
66     /**
67      * return True if the network provides DHCP services
68      */
69     @Nullable
70     Boolean isDhcp();
71  
72     /**
73      * 
74      * @return Network Address Translation rules for the network
75      */
76     Set<PortForwardingRule> getNatRules();
77  
78     /**
79      * @return Firewall rules for the network
80      */
81     Set<FirewallRule> getFirewallRules();
82  
83  }