Class AnnotationType.Impl

java.lang.Object
org.biojava.bio.AnnotationType.Abstract
org.biojava.bio.AnnotationType.Impl
All Implemented Interfaces:
AnnotationType
Enclosing interface:
AnnotationType

public static class AnnotationType.Impl extends AnnotationType.Abstract

An implementation of AnnotationType.

To build an instance of AnnotationType.Impl, first invoke the no-args constructor, and then use the setPropertyConstraint method to build the property->constraint mapping.

A convenient class for when you need an AnnotationType instance and don't want to write your own
Since:
1.3
Author:
Matthew Pocock, Thomas Down
  • Constructor Details

    • Impl

      public Impl()
      Create a new Impl with no constraints.
    • Impl

      public Impl(PropertyConstraint defaultPC, Location defaultCC)
      Create a new Impl with a default property and cardinality constraint.
      Parameters:
      defaultPC - the default PropertyConstraint
      defaultCC - the default CardinalityConstraint
    • Impl

      public Impl(CollectionConstraint unknown)
      Create a new Impl with a default collection constraint.
      Parameters:
      unknown - the default CollectionConstraint
  • Method Details

    • setDefaultConstraint

      Description copied from interface: AnnotationType
      Specifies the default constraint to apply to properties where no other constraint is specified.
      Parameters:
      cc - The default constraint.
    • getDefaultConstraint

      Description copied from interface: AnnotationType
      Get the CollectionConstraint that will be applied to all properties without an explicit binding. This defaults to CollectionConstraint.ALL.

      If you want to find out exactly what constraint will be applied to properties with no explicitly defined constraints

      Returns:
      the default CollectionConstraint
    • getConstraint

      Description copied from interface: AnnotationType

      Retrieve the constraint that will be applied to all properties with a given key.

      For an Annotation to be accepted, each key in getProperties() must be present in the annotation and each of the values associated with those properties must match the constraint.

      If you want to find out exactly what constraints will be applied to a particular propery key
      Parameters:
      key - the property to be validated.
      Returns:
      PropertyConstraint the constraint by which the values must be accepted.
    • setConstraint

      public void setConstraint(Object key, CollectionConstraint cc)
      Description copied from interface: AnnotationType
      Specifies the constraint to apply to the specified property.
      Parameters:
      key - the name of the property to constrain
      cc - the constraint to apply to this slot.
    • getProperties

      public Set getProperties()
      Description copied from interface: AnnotationType
      Retrieve the set of properties for which constraints have been explicity specified. Discover which properties have explicit constraints
      Returns:
      the Set of properties to validate.
    • setComment

      public void setComment(String comment)
      Description copied from interface: AnnotationType
      Set the comment for the whole AnnotationType. This is human-readable text.
      Parameters:
      comment - the new comment
    • getComment

      public String getComment()
      Description copied from interface: AnnotationType
      Get the comment for the whole AnnotationType. This is human-readable text.
      Returns:
      the comment
    • setComment

      public void setComment(Object key, String comment)
      Description copied from interface: AnnotationType
      Set the comment for a particular property. This is a human-readable description of the property.
      Parameters:
      key - the property to comment on
      comment - the comment
    • getComment

      public String getComment(Object key)
      Description copied from interface: AnnotationType
      Get the comment for a particular property. This is a human-readable description of the property.
      Parameters:
      key - the property to get a comment for
      Returns:
      the comment