Class CInterfaceDescriptor

  • All Implemented Interfaces:
    net.morimekta.providence.descriptor.PDescriptor, CAnnotatedDescriptor, CMessageDescriptor

    public class CInterfaceDescriptor
    extends net.morimekta.providence.descriptor.PInterfaceDescriptor<CInterface>
    implements CMessageDescriptor
    Descriptor for an interface. Note that this does not have an equivalent in providence-core, as these interfaces are there for the code generation. They do not alter serialization.
    • Constructor Summary

      Constructors 
      Constructor Description
      CInterfaceDescriptor​(java.lang.String comment, java.lang.String packageName, java.lang.String name, java.util.List<CField<CInterface>> fields, java.util.Map<java.lang.String,​java.lang.String> annotations)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addPossibleType​(net.morimekta.providence.descriptor.PMessageDescriptor<?> descriptor)  
      java.util.Set<java.lang.String> getAnnotations()
      Get set of available annotations.
      java.lang.String getAnnotationValue​(java.lang.String name)
      Get the given annotation value.
      java.lang.String getDocumentation()
      The type comment is the last block of comment written before the type declaration.
      CInterfaceDescriptor getImplementing()  
      java.util.List<net.morimekta.providence.descriptor.PMessageDescriptor<?>> getPossibleTypes()  
      boolean hasAnnotation​(java.lang.String name)
      Get the given annotation value.
      • Methods inherited from class net.morimekta.providence.descriptor.PInterfaceDescriptor

        builder, findFieldById, findFieldByName, getFields, getVariant
      • Methods inherited from class net.morimekta.providence.descriptor.PMessageDescriptor

        equals, fieldForId, fieldForName, getBuilderSupplier, getType, hashCode, isSimple
      • Methods inherited from class net.morimekta.providence.descriptor.PDeclaredDescriptor

        getDefaultValue, getName, getProgramName, getQualifiedName, toString
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface net.morimekta.providence.descriptor.PDescriptor

        getDefaultValue, getName, getProgramName, getQualifiedName, getQualifiedName, getType
    • Constructor Detail

      • CInterfaceDescriptor

        public CInterfaceDescriptor​(java.lang.String comment,
                                    java.lang.String packageName,
                                    java.lang.String name,
                                    java.util.List<CField<CInterface>> fields,
                                    java.util.Map<java.lang.String,​java.lang.String> annotations)
    • Method Detail

      • addPossibleType

        public void addPossibleType​(net.morimekta.providence.descriptor.PMessageDescriptor<?> descriptor)
      • getPossibleTypes

        public java.util.List<net.morimekta.providence.descriptor.PMessageDescriptor<?>> getPossibleTypes()
        Overrides:
        getPossibleTypes in class net.morimekta.providence.descriptor.PInterfaceDescriptor<CInterface>
      • getDocumentation

        public final java.lang.String getDocumentation()
        Description copied from interface: CAnnotatedDescriptor
        The type comment is the last block of comment written before the type declaration. Comments on the same line, after the declaration is ignored.
        Specified by:
        getDocumentation in interface CAnnotatedDescriptor
        Returns:
        The comment string containing all formatting (not including the comment delimiter and the leading space.
      • hasAnnotation

        public boolean hasAnnotation​(@Nonnull
                                     java.lang.String name)
        Description copied from interface: CAnnotatedDescriptor
        Get the given annotation value.
        Specified by:
        hasAnnotation in interface CAnnotatedDescriptor
        Parameters:
        name - Name of annotation.
        Returns:
        If the annotation is present.
      • getAnnotationValue

        public java.lang.String getAnnotationValue​(@Nonnull
                                                   java.lang.String name)
        Description copied from interface: CAnnotatedDescriptor
        Get the given annotation value.
        Specified by:
        getAnnotationValue in interface CAnnotatedDescriptor
        Parameters:
        name - Name of annotation.
        Returns:
        The annotation value or null.