Class StaticStructureElement

All Implemented Interfaces:
PropertyHolder, Comparable<ModelItem>
Direct Known Subclasses:
Component, Container, Person, SoftwareSystem

public abstract class StaticStructureElement extends GroupableElement
This is the superclass for model elements that describe the static structure of a software system, namely Person, SoftwareSystem, Container and Component.
  • Method Details

    • uses

      @Nullable public Relationship uses(@Nonnull SoftwareSystem destination, String description)
      Adds a unidirectional "uses" style relationship between this element and software system.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull SoftwareSystem destination, String description, String technology)
      Adds a unidirectional "uses" style relationship between this element and a software system.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull SoftwareSystem destination, String description, String technology, InteractionStyle interactionStyle)
      Adds a unidirectional "uses" style relationship between this element and a software system.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull SoftwareSystem destination, String description, String technology, InteractionStyle interactionStyle, String[] tags)
      Adds a unidirectional "uses" style relationship between this element and a software system.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      tags - an array of tags
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Container destination, String description)
      Adds a unidirectional "uses" style relationship between this element and container.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Container destination, String description, String technology)
      Adds a unidirectional "uses" style relationship between this element and a container.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Container destination, String description, String technology, InteractionStyle interactionStyle)
      Adds a unidirectional "uses" style relationship between this element and a container.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Container destination, String description, String technology, InteractionStyle interactionStyle, String[] tags)
      Adds a unidirectional "uses" style relationship between this element and a container.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      tags - an array of tags
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Component destination, String description)
      Adds a unidirectional "uses" style relationship between this element and component.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Component destination, String description, String technology)
      Adds a unidirectional "uses" style relationship between this element and a component.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Component destination, String description, String technology, InteractionStyle interactionStyle)
      Adds a unidirectional "uses" style relationship between this element and a component.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull Component destination, String description, String technology, InteractionStyle interactionStyle, String[] tags)
      Adds a unidirectional "uses" style relationship between this element and a component.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      tags - an array of tags
      Returns:
      the relationship that has just been created and added to the model
    • delivers

      @Nullable public Relationship delivers(@Nonnull Person destination, String description)
      Adds a unidirectional relationship between this element and a person.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "sends e-mail to")
      Returns:
      the relationship that has just been created and added to the model
    • delivers

      @Nullable public Relationship delivers(@Nonnull Person destination, String description, String technology)
      Adds a unidirectional relationship between this element and a person.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "sends e-mail to")
      technology - the technology details (e.g. JSON/HTTPS)
      Returns:
      the relationship that has just been created and added to the model
    • delivers

      @Nullable public Relationship delivers(@Nonnull Person destination, String description, String technology, InteractionStyle interactionStyle)
      Adds a unidirectional relationship between this element and a person.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "sends e-mail to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      Returns:
      the relationship that has just been created and added to the model
    • delivers

      @Nullable public Relationship delivers(@Nonnull Person destination, String description, String technology, InteractionStyle interactionStyle, String[] tags)
      Adds a unidirectional relationship between this element and a person.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "sends e-mail to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      tags - an array of tags
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull StaticStructureElement destination, String description, String technology, InteractionStyle interactionStyle)
      Adds a unidirectional "uses" style relationship between this element and the specified element.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      Returns:
      the relationship that has just been created and added to the model
    • uses

      @Nullable public Relationship uses(@Nonnull StaticStructureElement destination, String description, String technology, InteractionStyle interactionStyle, String[] tags)
      Adds a unidirectional "uses" style relationship between this element and the specified element.
      Parameters:
      destination - the target of the relationship
      description - a description of the relationship (e.g. "uses", "gets data from", "sends data to")
      technology - the technology details (e.g. JSON/HTTPS)
      interactionStyle - the interaction style (sync vs async)
      tags - an array of tags
      Returns:
      the relationship that has just been created and added to the model