Class BaseElement

  • Direct Known Subclasses:
    CodeSegment, Model, ModelField, ModelType

    public abstract class BaseElement
    extends java.lang.Object
    This is the base class for all elements of the model. The name attribute is immutable because it's used as the key.
    • Field Detail

      • name

        private java.lang.String name
      • description

        private java.lang.String description
      • comment

        private java.lang.String comment
      • annotations

        private java.util.List<java.lang.String> annotations
      • deprecatedVersion

        private Version deprecatedVersion
      • metadata

        private transient java.util.Map<java.lang.String,​Metadata> metadata
      • nameRequired

        private boolean nameRequired
    • Constructor Detail

      • BaseElement

        public BaseElement​(boolean nameRequired)
      • BaseElement

        public BaseElement​(boolean nameRequired,
                           java.lang.String name)
    • Method Detail

      • getName

        public java.lang.String getName()
      • setName

        public void setName​(java.lang.String name)
      • getDescription

        public java.lang.String getDescription()
      • setDescription

        public void setDescription​(java.lang.String description)
      • setVersionRange

        public void setVersionRange​(VersionRange versionRange)
      • setDeprecatedVersion

        public void setDeprecatedVersion​(Version deprecatedVersion)
      • getDeprecatedVersion

        public Version getDeprecatedVersion()
      • getComment

        public java.lang.String getComment()
      • setComment

        public void setComment​(java.lang.String comment)
      • hasMetadata

        public boolean hasMetadata​(java.lang.String key)
      • addMetadata

        public void addMetadata​(Metadata metadata)
      • getMetadata

        protected <T extends Metadata> T getMetadata​(java.lang.Class<T> type,
                                                     java.lang.String key)
      • isEmpty

        protected boolean isEmpty​(java.lang.String string)
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • getAnnotations

        public java.util.List<java.lang.String> getAnnotations()
        Returns:
        the annotations
      • setAnnotations

        public void setAnnotations​(java.util.List<java.lang.String> annotations)
        Parameters:
        annotations - the annotations to set