Class OtherComponent

java.lang.Object
com.microservices.starter.core.environment.OtherComponent
All Implemented Interfaces:
DomainAware, EnabledAware, Identifiable, Routed, Serializable

public class OtherComponent extends Object implements Routed, Serializable, DomainAware
Type of component definition that is neither a flexpackage or standard java microservice library component. Generally, this type of component relates to JS projects, such as: admin starter, nextjs commerce starter, and open api starter.
See Also:
  • Constructor Details

    • OtherComponent

      public OtherComponent()
  • Method Details

    • getName

      public String getName()
      Description copied from interface: Identifiable
      The name used to identify the component. Required.
      Specified by:
      getName in interface DomainAware
      Specified by:
      getName in interface EnabledAware
      Specified by:
      getName in interface Identifiable
    • getAltName

      public String getAltName()
      Description copied from interface: Identifiable
      An alternative name used to identify the component. Generally the longer version of the name for those components with long or descriptive names. Optional.
      Specified by:
      getAltName in interface Identifiable
    • getDomain

      public Domain getDomain()
      Description copied from interface: Identifiable
      Domain (DNS) information used at runtime for dynamic application configuration to negotiate gateway routing and interservice communication appropriately based on the deployed environment. Required.
      Specified by:
      getDomain in interface DomainAware
      Specified by:
      getDomain in interface Identifiable
    • getEnabled

      public Boolean getEnabled()
      Description copied from interface: Identifiable
      Whether or not the component is enabled. Disabled flexpackage components are not included in docker-compose and are not included in generated project structure, disabled service library components are not included in generated project structure (in which case it is assumed Broadleaf's out-of-the-box version is used), and disabled "other" components are not included in docker-compose. Required.
      Specified by:
      getEnabled in interface EnabledAware
      Specified by:
      getEnabled in interface Identifiable
    • getPorts

      public List<Port> getPorts()
      Description copied from interface: Identifiable
      The ports exposed and supported by the component. Required.
      Specified by:
      getPorts in interface Identifiable
    • getEditSource

      public Boolean getEditSource()
      Components in the "other" category can generally be enabled for direct source editing via this property. The assembly zip with the original project source is downloaded and expanded so that it is available for customization. This is a special case and generally applies to front end code, such as commerce and admin starters. Optional. False by default.
    • getImageUriOverride

      public String getImageUriOverride()
      The system will usually determine the image name for project generated components based on convention using a mixture of the component name, and docker related properties found in Docker. However, if a non-generated URI is desired to target the appropriate image for the component, it can be specified here. A valid URI would be something like: /my-prefix/my-name. Optional. Generated by default.
    • getRouted

      public Boolean getRouted()
      Description copied from interface: Routed
      Whether or not this service is included in the routing configuration supplied to the gateway service. Optional. True by default.
      Specified by:
      getRouted in interface Routed
    • getAltRoute

      public String getAltRoute()
      Description copied from interface: Routed
      An additional route this component is known by in the gateway service. This is rarely used and is primarily leveraged by auth. Optional.
      Specified by:
      getAltRoute in interface Routed
    • getDockerEnvContribution

      public Map<String,String> getDockerEnvContribution()
      Optionally contribute ENV properties to the generated docker-compose.yml. This can be useful if certain other components (e.g. storefronts) require additional configuration parameters as part of running in a docker environment.

      The Map of property keys and corresponding values.

      For example: {NEXT_PUBLIC_TENANT_RESOLVER_APPLICATION_RESOLUTION: url}

    • setName

      public void setName(String name)
    • setAltName

      public void setAltName(String altName)
    • setDomain

      public void setDomain(Domain domain)
      Description copied from interface: DomainAware
      Domain (DNS) information used at runtime for dynamic application configuration to negotiate gateway routing and interservice communication appropriately based on the deployed environment. Required.
      Specified by:
      setDomain in interface DomainAware
    • setEnabled

      public void setEnabled(Boolean enabled)
      Specified by:
      setEnabled in interface EnabledAware
    • setPorts

      public void setPorts(List<Port> ports)
    • setEditSource

      public void setEditSource(Boolean editSource)
      Components in the "other" category can generally be enabled for direct source editing via this property. The assembly zip with the original project source is downloaded and expanded so that it is available for customization. This is a special case and generally applies to front end code, such as commerce and admin starters. Optional. False by default.
    • setImageUriOverride

      public void setImageUriOverride(String imageUriOverride)
      The system will usually determine the image name for project generated components based on convention using a mixture of the component name, and docker related properties found in Docker. However, if a non-generated URI is desired to target the appropriate image for the component, it can be specified here. A valid URI would be something like: /my-prefix/my-name. Optional. Generated by default.
    • setRouted

      public void setRouted(Boolean routed)
    • setAltRoute

      public void setAltRoute(String altRoute)
    • setDockerEnvContribution

      public void setDockerEnvContribution(Map<String,String> dockerEnvContribution)
      Optionally contribute ENV properties to the generated docker-compose.yml. This can be useful if certain other components (e.g. storefronts) require additional configuration parameters as part of running in a docker environment.

      The Map of property keys and corresponding values.

      For example: {NEXT_PUBLIC_TENANT_RESOLVER_APPLICATION_RESOLUTION: url}

    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object