java.lang.Object
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.PropertyName
All Implemented Interfaces:
Serializable

public class PropertyName extends Object implements Serializable
Simple value class used for containing names of properties as defined by annotations (and possibly other configuration sources).
Since:
2.1
See Also:
  • Field Details

    • USE_DEFAULT

      public static final PropertyName USE_DEFAULT
      Special placeholder value that indicates that name to use should be based on the standard heuristics. This can be different from returning null, as null means "no information available, whereas this value indicates explicit defaulting.
    • NO_NAME

      public static final PropertyName NO_NAME
      Special placeholder value that indicates that there is no name associated. Exact semantics to use (if any) depend on actual annotation in use, but commonly this value disables behavior for which name would be needed.
    • _simpleName

      protected final String _simpleName
      Basic name of the property.
    • _namespace

      protected final String _namespace
      Additional namespace, for formats that have such concept (JSON does not, XML does, for example).
    • _encodedSimple

      protected SerializableString _encodedSimple
      Lazily-constructed efficient representation of the simple name.

      NOTE: not defined as volatile to avoid performance problem with concurrent access in multi-core environments; due to statelessness of SerializedString at most leads to multiple instantiations.

      Since:
      2.4
  • Constructor Details

    • PropertyName

      public PropertyName(String simpleName)
    • PropertyName

      public PropertyName(String simpleName, String namespace)
  • Method Details

    • readResolve

      protected Object readResolve()
    • construct

      public static PropertyName construct(String simpleName)
      Since:
      2.6
    • construct

      public static PropertyName construct(String simpleName, String ns)
    • internSimpleName

      public PropertyName internSimpleName()
    • withSimpleName

      public PropertyName withSimpleName(String simpleName)
      Fluent factory method for constructing an instance with different simple name.
    • withNamespace

      public PropertyName withNamespace(String ns)
      Fluent factory method for constructing an instance with different namespace.
    • getSimpleName

      public String getSimpleName()
    • simpleAsEncoded

      public SerializableString simpleAsEncoded(MapperConfig<?> config)
      Accessor that may be used to get lazily-constructed efficient representation of the simple name.
      Since:
      2.4
    • getNamespace

      public String getNamespace()
    • hasSimpleName

      public boolean hasSimpleName()
    • hasSimpleName

      public boolean hasSimpleName(String str)
      Since:
      2.3
    • hasNamespace

      public boolean hasNamespace()
    • isEmpty

      public boolean isEmpty()
      Method that is basically equivalent of:
         !hasSimpleName() << !hasNamespace();
      
      Since:
      2.4
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object