Class InstantiableRelationDefinition<C extends ConfigurationClient,​S extends Configuration>

  • Type Parameters:
    C - The type of client managed object configuration that this relation definition refers to.
    S - The type of server managed object configuration that this relation definition refers to.

    public final class InstantiableRelationDefinition<C extends ConfigurationClient,​S extends Configuration>
    extends RelationDefinition<C,​S>
    A managed object composite relationship definition which represents a composition of zero or more managed objects.
    • Method Detail

      • accept

        public <R,​P> R accept​(RelationDefinitionVisitor<R,​P> v,
                                    P p)
        Description copied from class: RelationDefinition
        Apply a visitor to this relation definition.
        Specified by:
        accept in class RelationDefinition<C extends ConfigurationClient,​S extends Configuration>
        Type Parameters:
        R - The return type of the visitor's methods.
        P - The type of the additional parameters to the visitor's methods.
        Parameters:
        v - The relation definition visitor.
        p - Optional additional visitor parameter.
        Returns:
        Returns a result as specified by the visitor.
      • getDefaultManagedObject

        public DefaultManagedObject<? extends C,​? extends S> getDefaultManagedObject​(String name)
        Gets the named default managed object associated with this instantiable relation definition.
        Parameters:
        name - The name of the default managed object.
        Returns:
        Returns the named default managed object.
        Throws:
        IllegalArgumentException - If there is no default managed object associated with the provided name.
      • getDefaultManagedObjectNames

        public Set<String> getDefaultManagedObjectNames()
        Gets the names of the default managed objects associated with this instantiable relation definition.
        Returns:
        Returns an unmodifiable set containing the names of the default managed object.
      • getNamingPropertyDefinition

        public PropertyDefinition<?> getNamingPropertyDefinition()
        Get the property of the child managed object definition which should be used for naming children.
        Returns:
        Returns the property of the child managed object definition which should be used for naming, or null if this relation does not use a property for naming.
      • getPluralName

        public String getPluralName()
        Get the plural name of the relation.
        Returns:
        Returns the plural name of the relation.
      • getUserFriendlyPluralName

        public LocalizableMessage getUserFriendlyPluralName()
        Gets the user friendly plural name of this relation definition in the default locale.
        Returns:
        Returns the user friendly plural name of this relation definition in the default locale.
      • getUserFriendlyPluralName

        public LocalizableMessage getUserFriendlyPluralName​(Locale locale)
        Gets the user friendly plural name of this relation definition in the specified locale.
        Parameters:
        locale - The locale.
        Returns:
        Returns the user friendly plural name of this relation definition in the specified locale.