Interface RelationDefinitionVisitor<R,​P>

  • Type Parameters:
    R - The return type of this visitor's methods. Use Void for visitors that do not need to return results.
    P - The type of the additional parameter to this visitor's methods. Use Void for visitors that do not need an additional parameter.

    public interface RelationDefinitionVisitor<R,​P>
    A visitor of relation definitions, in the style of the visitor design pattern. Classes implementing this interface can query relation definitions in a type-safe manner when the kind of relation definition is unknown at compile time. When a visitor is passed to a relation definition's accept method, the corresponding visit method most applicable to that relation definition is invoked.
    • Method Detail

      • visitInstantiable

        <C extends ConfigurationClient,​S extends ConfigurationR visitInstantiable​(InstantiableRelationDefinition<C,​S> rd,
                                                                                          P p)
        Visit an instantiable relation definition.
        Type Parameters:
        C - The type of client managed object configuration that the relation definition refers to.
        S - The type of server managed object configuration that the relation definition refers to.
        Parameters:
        rd - The instantiable relation definition to visit.
        p - A visitor specified parameter.
        Returns:
        Returns a visitor specified result.
      • visitSet

        <C extends ConfigurationClient,​S extends ConfigurationR visitSet​(SetRelationDefinition<C,​S> rd,
                                                                                 P p)
        Visit a set relation definition.
        Type Parameters:
        C - The type of client managed object configuration that the relation definition refers to.
        S - The type of server managed object configuration that the relation definition refers to.
        Parameters:
        rd - The set relation definition to visit.
        p - A visitor specified parameter.
        Returns:
        Returns a visitor specified result.
      • visitOptional

        <C extends ConfigurationClient,​S extends ConfigurationR visitOptional​(OptionalRelationDefinition<C,​S> rd,
                                                                                      P p)
        Visit an optional relation definition.
        Type Parameters:
        C - The type of client managed object configuration that the relation definition refers to.
        S - The type of server managed object configuration that the relation definition refers to.
        Parameters:
        rd - The optional relation definition to visit.
        p - A visitor specified parameter.
        Returns:
        Returns a visitor specified result.
      • visitSingleton

        <C extends ConfigurationClient,​S extends ConfigurationR visitSingleton​(SingletonRelationDefinition<C,​S> rd,
                                                                                       P p)
        Visit a singleton relation definition.
        Type Parameters:
        C - The type of client managed object configuration that the relation definition refers to.
        S - The type of server managed object configuration that the relation definition refers to.
        Parameters:
        rd - The singleton relation definition to visit.
        p - A visitor specified parameter.
        Returns:
        Returns a visitor specified result.