Interface Cluster

All Superinterfaces:
org.jvnet.hk2.config.ConfigBeanProxy, org.glassfish.api.admin.config.Named, jakarta.validation.Payload, org.jvnet.hk2.config.types.PropertyBag, RefContainer, org.glassfish.api.admin.config.ReferenceContainer, SystemPropertyBag

@ConfigRefConstraint(message="{configref.invalid}", payload=ConfigRefValidator.class) @ReferenceConstraint(skipDuringCreation=true, payload=Cluster.class) public interface Cluster extends org.jvnet.hk2.config.ConfigBeanProxy, org.jvnet.hk2.config.types.PropertyBag, org.glassfish.api.admin.config.Named, SystemPropertyBag, org.glassfish.api.admin.config.ReferenceContainer, RefContainer, jakarta.validation.Payload
A cluster defines a homogeneous set of server instances that share the same applications, resources, and configuration.
  • Method Details

    • setName

      void setName(String name) throws PropertyVetoException
      Sets the cluster name.
      Specified by:
      setName in interface org.glassfish.api.admin.config.Named
      Parameters:
      name - cluster name
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getName

      @Pattern(regexp="[A-Za-z0-9_][A-Za-z0-9\\-_\\.;]*", message="{cluster.invalid.name}", payload=Cluster.class) @Pattern(regexp="[A-Za-z0-9_][A-Za-z0-9\\-_\\.;]*",message="{cluster.invalid.name}",payload=Cluster.class) String getName()
      Specified by:
      getName in interface org.glassfish.api.admin.config.Named
    • getConfigRef

      @NotNull @Pattern(regexp="[A-Za-z0-9_][A-Za-z0-9\\-_\\.;]*", message="{config.invalid.name}") @RemoteKey(message="{resourceref.invalid.configref}", type=Config.class) @NotNull @Pattern(regexp="[A-Za-z0-9_][A-Za-z0-9\\-_\\.;]*",message="{config.invalid.name}") String getConfigRef()
      Points to a named config.

      All server instances in the cluster will share this config.

      Returns:
      a named config name
    • setConfigRef

      void setConfigRef(String configRef) throws PropertyVetoException
      Sets the value of the configRef property.
      Parameters:
      configRef - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getGmsEnabled

      @NotNull @NotNull String getGmsEnabled()
      Gets the value of the gmsEnabled property.

      When gms-enabled is set to true, the GMS services will be started as a lifecycle module in each the application server in the cluster.

      Returns:
      true | false as a string, null means false
    • setGmsEnabled

      void setGmsEnabled(String gmsEnabled) throws PropertyVetoException
      Sets the value of the gmsEnabled property.
      Parameters:
      gmsEnabled - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getBroadcast

      @NotNull @NotNull String getBroadcast()
      Gets the value of the broadcast property.

      When broadcast is set to default of udpmulticast and GmsMulticastPort GMSMulticastAddress are not set, then their values are generated. When broadcast is set to implied unicast using udp or tcp protocol, then the VIRUTAL_MUTLICAST_URI_LIST is generated for virtual broadcast over unicast mode.

      Returns:
      true | false as a string, null means false
    • setBroadcast

      void setBroadcast(String broadcast) throws PropertyVetoException
      Sets the value of the broadcast property.
      Parameters:
      broadcast - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getGmsMulticastPort

      @Min(2048L) @Max(49151L) @Min(2048L) @Max(49151L) String getGmsMulticastPort()
      Gets the value of the gmsMulticastPort property.

      This is the communication port GMS uses to listen for group events.

      This should be a valid port number.

      Returns:
      possible object is String
    • setGmsMulticastPort

      void setGmsMulticastPort(String multicastPort) throws PropertyVetoException
      Sets the value of the gmsMulticastPort property.
      Parameters:
      multicastPort - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getGmsMulticastAddress

      String getGmsMulticastAddress()
      Gets the value of the gmsMulticastAddress property.

      This is the address (only multicast supported) at which GMS will listen for group events.

      Must be unique for each cluster.

      Returns:
      possible object is String
    • setGmsMulticastAddress

      void setGmsMulticastAddress(String multicastAddress) throws PropertyVetoException
      Sets the value of the gmsMulticastAddress property.
      Parameters:
      multicastAddress - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getGmsBindInterfaceAddress

      String getGmsBindInterfaceAddress()
      Gets the value of the gmsBindInterfaceAddress property.
      Returns:
      possible object is String
    • setGmsBindInterfaceAddress

      void setGmsBindInterfaceAddress(String bindAddress) throws PropertyVetoException
      Sets the value of the gmsBindInterfaceAddress property.
      Parameters:
      bindAddress - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getHeartbeatEnabled

      @Deprecated String getHeartbeatEnabled()
      Deprecated.
      Gets the value of the heartbeatEnabled property.

      When heartbeat-enabled is set to true, the GMS services will be started as a lifecycle module in each the application server in the cluster. When heartbeat-enabled is set to false, GMS will not be started and its services will be unavailable. Clusters should function albeit with reduced functionality.

      Returns:
      true | false as a string, null means false
    • setHeartbeatEnabled

      @Deprecated void setHeartbeatEnabled(String heartbeatEnabled) throws PropertyVetoException
      Deprecated.
      Sets the value of the heartbeatEnabled property.
      Parameters:
      heartbeatEnabled - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getHeartbeatPort

      @Deprecated String getHeartbeatPort()
      Deprecated.
      Gets the value of the heartbeatPort property.

      This is the communication port GMS uses to listen for group events.

      This should be a valid port number.

      Returns:
      possible object is String
    • setHeartbeatPort

      @Deprecated void setHeartbeatPort(String heartbeatPort) throws PropertyVetoException
      Deprecated.
      Sets the value of the heartbeatPort property.
      Parameters:
      heartbeatPort - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getHeartbeatAddress

      @Deprecated String getHeartbeatAddress()
      Deprecated.
      Gets the value of the heartbeatAddress property.

      This is the address (only multicast supported) at which GMS will listen for group events.

      Returns:
      possible object is String
    • setHeartbeatAddress

      @Deprecated void setHeartbeatAddress(String heartbeatAddress) throws PropertyVetoException
      Deprecated.
      Sets the value of the heartbeatAddress property.
      Parameters:
      heartbeatAddress - allowed object is String
      Throws:
      PropertyVetoException - if a listener vetoes the change
    • getServerRef

      List<ServerRef> getServerRef()
      Gets the value of the serverRef property.

      List of servers in the cluster

      Returns:
      list of configured ServerRef
    • getSystemProperty

      @ToDo(priority=IMPORTANT, details="Provide PropertyDesc for legal system props") List<SystemProperty> getSystemProperty()
      Gets the value of the systemProperty property.

      This accessor method returns a reference to the live list, not a snapshot. Therefore any modification you make to the returned list will be present inside the JAXB object. This is why there is not a set method for the systemProperty property.

      For example, to add a new item, do as follows:

       getSystemProperty().add(newItem);
       

      Objects of the following type(s) are allowed in the list SystemProperty

      Specified by:
      getSystemProperty in interface SystemPropertyBag
    • getProperty

      @ToDo(priority=IMPORTANT, details="Complete PropertyDesc for legal props") @PropertiesDesc(props=@PropertyDesc(name="GMS_LISTENER_PORT",defaultValue="9090",description="GMS listener port")) List<org.jvnet.hk2.config.types.Property> getProperty()
      Properties as per PropertyBag
      Specified by:
      getProperty in interface org.jvnet.hk2.config.types.PropertyBag
    • getExtensions

      List<ClusterExtension> getExtensions()
    • getReference

      default String getReference()
      Returns the cluster configuration reference
      Specified by:
      getReference in interface org.glassfish.api.admin.config.ReferenceContainer
      Returns:
      the config-ref attribute
    • getInstances

      default List<Server> getInstances()
    • getServerRefByRef

      default ServerRef getServerRefByRef(String refName)
    • isCluster

      default boolean isCluster()
      Specified by:
      isCluster in interface org.glassfish.api.admin.config.ReferenceContainer
    • isServer

      default boolean isServer()
      Specified by:
      isServer in interface org.glassfish.api.admin.config.ReferenceContainer
    • isDas

      default boolean isDas()
      Specified by:
      isDas in interface org.glassfish.api.admin.config.ReferenceContainer
    • isInstance

      default boolean isInstance()
      Specified by:
      isInstance in interface org.glassfish.api.admin.config.ReferenceContainer
    • isVirtual

      default boolean isVirtual()
    • getApplicationRef

      default ApplicationRef getApplicationRef(String appName)
    • getResourceRef

      default ResourceRef getResourceRef(org.glassfish.api.naming.SimpleJndiName refName)
    • isResourceRefExists

      default boolean isResourceRefExists(org.glassfish.api.naming.SimpleJndiName refName)
    • createResourceRef

      default void createResourceRef(String enabled, org.glassfish.api.naming.SimpleJndiName refName) throws org.jvnet.hk2.config.TransactionFailure
      Throws:
      org.jvnet.hk2.config.TransactionFailure
    • deleteResourceRef

      default void deleteResourceRef(org.glassfish.api.naming.SimpleJndiName refName) throws org.jvnet.hk2.config.TransactionFailure
      Throws:
      org.jvnet.hk2.config.TransactionFailure
    • getExtensionsByType

      default <T extends ClusterExtension> List<T> getExtensionsByType(Class<T> type)
    • getExtensionsByTypeAndName

      default <T extends ClusterExtension> T getExtensionsByTypeAndName(Class<T> type, String name)