All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openstack4j.model.network.Network Maven / Gradle / Ivy

There is a newer version: 3.12
Show newest version
package org.openstack4j.model.network;

import java.util.List;

import com.fasterxml.jackson.annotation.JsonProperty;
import org.openstack4j.common.Buildable;
import org.openstack4j.model.common.Resource;
import org.openstack4j.model.common.TimeEntity;
import org.openstack4j.model.network.builder.NetworkBuilder;

/**
 * An OpenStack (Neutron) network
 *
 * @author Jeremy Unruh
 */
public interface Network extends Resource, TimeEntity, Buildable {

    /**
     * @return the status of the network
     */
    State getStatus();

    /**
     * @return list of subnet identifiers associated with the network
     */
    List getSubnets();

    /**
     * @return the physical network provider or null
     */
    String getProviderPhyNet();

    /**
     * @return true if the administrative state is up
     */
    boolean isAdminStateUp();

    /**
     * @return the network type
     */
    NetworkType getNetworkType();

    /**
     * @return true if the router is external
     */
    boolean isRouterExternal();

    /**
     * @return true if the network is shared
     */
    boolean isShared();

    /**
     * @return the provider segmentation identifier
     */
    String getProviderSegID();

    /**
     * @return the list of Subnets
     */
    List getNeutronSubnets();

    /**
     * @return The maximum transmission unit (MTU) value to address fragmentation. Minimum value is 68 for IPv4, and 1280 for IPv6.
     */
    Integer getMTU();

    /**
     * @return the list of the availability zone candidate for the network.
     */
    List getAvailabilityZoneHints();

    /**
     * @return the list of the availability zone for the network.
     */
    List getAvailabilityZones();

    /**
     * @return true if the port security enabled is shared
     */
    Boolean isPortSecurityEnabled();

    /**
     * @return true if the network is default pool
     */
    @JsonProperty("is_default")
    boolean isDefault();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy