Class TypeDeclaration

  • All Implemented Interfaces:
    java.io.Externalizable, java.io.Serializable, java.lang.Comparable<TypeDeclaration>, org.kie.api.definition.KieDefinition, org.kie.internal.definition.KnowledgeDefinition

    public class TypeDeclaration
    extends java.lang.Object
    implements org.kie.internal.definition.KnowledgeDefinition, java.io.Externalizable, java.lang.Comparable<TypeDeclaration>
    The type declaration class stores all type's metadata declared in source files.
    See Also:
    Serialized Form
    • Constructor Detail

      • TypeDeclaration

        public TypeDeclaration()
      • TypeDeclaration

        public TypeDeclaration​(java.lang.String typeName)
    • Method Detail

      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException,
                                 java.lang.ClassNotFoundException
        Specified by:
        readExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        Specified by:
        writeExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException
      • getSetMask

        public int getSetMask()
      • getTypeName

        public java.lang.String getTypeName()
        Returns:
        the type
      • getRole

        public org.kie.api.definition.type.Role.Type getRole()
        Returns:
        the category
      • setRole

        public void setRole​(org.kie.api.definition.type.Role.Type role)
        Parameters:
        role - the category to set
      • getTimestampAttribute

        public java.lang.String getTimestampAttribute()
        Returns:
        the timestampAttribute
      • setTimestampAttribute

        public void setTimestampAttribute​(java.lang.String timestampAttribute)
        Parameters:
        timestampAttribute - the timestampAttribute to set
      • getDurationAttribute

        public java.lang.String getDurationAttribute()
        Returns:
        the durationAttribute
      • setDurationAttribute

        public void setDurationAttribute​(java.lang.String durationAttribute)
        Parameters:
        durationAttribute - the durationAttribute to set
      • isValid

        public boolean isValid()
      • setValid

        public void setValid​(boolean valid)
      • getTypeClass

        public java.lang.Class<?> getTypeClass()
        Returns:
        the typeClass
      • setTypeClass

        public void setTypeClass​(java.lang.Class<?> typeClass)
        Parameters:
        typeClass - the typeClass to set
      • isDefinition

        public boolean isDefinition()
      • isGeneratedFact

        public boolean isGeneratedFact()
      • getTypeTemplate

        public FactTemplate getTypeTemplate()
        Returns:
        the typeTemplate
      • setTypeTemplate

        public void setTypeTemplate​(FactTemplate typeTemplate)
        Parameters:
        typeTemplate - the typeTemplate to set
      • matches

        public boolean matches​(java.lang.Object clazz)
        Returns true if the given parameter matches this type declaration
      • hashCode

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

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • getDurationExtractor

        public ReadAccessor getDurationExtractor()
      • setDurationExtractor

        public void setDurationExtractor​(ReadAccessor durationExtractor)
      • getTypeClassDef

        public ClassDefinition getTypeClassDef()
        Returns:
        the typeClassDef
      • setTypeClassDef

        public void setTypeClassDef​(ClassDefinition typeClassDef)
        Parameters:
        typeClassDef - the typeClassDef to set
      • getTimestampExtractor

        public ReadAccessor getTimestampExtractor()
      • setTimestampExtractor

        public void setTimestampExtractor​(ReadAccessor timestampExtractor)
      • getResource

        public org.kie.api.io.Resource getResource()
      • setResource

        public void setResource​(org.kie.api.io.Resource resource)
      • getObjectType

        public ObjectType getObjectType()
      • getExpirationOffset

        public long getExpirationOffset()
      • setExpirationOffset

        public void setExpirationOffset​(long expirationOffset)
      • getExpirationPolicy

        public org.kie.api.definition.type.Expires.Policy getExpirationPolicy()
      • setExpirationType

        public void setExpirationType​(org.kie.api.definition.type.Expires.Policy expirationPolicy)
      • getTypeClassName

        public java.lang.String getTypeClassName()
      • setTypeClassName

        public void setTypeClassName​(java.lang.String typeClassName)
      • isJavaBased

        public boolean isJavaBased()
      • isDynamic

        public boolean isDynamic()
      • setDynamic

        public void setDynamic​(boolean dynamic)
      • isTypesafe

        public boolean isTypesafe()
      • setTypesafe

        public void setTypesafe​(boolean typesafe)
      • isPropertyReactive

        public boolean isPropertyReactive()
      • setPropertyReactive

        public void setPropertyReactive​(boolean propertyReactive)
      • isNovel

        public boolean isNovel()
      • setNovel

        public void setNovel​(boolean novel)
      • getAccessibleProperties

        public java.util.List<java.lang.String> getAccessibleProperties()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getKnowledgeType

        public org.kie.api.definition.KieDefinition.KnowledgeType getKnowledgeType()
        Specified by:
        getKnowledgeType in interface org.kie.api.definition.KieDefinition
      • getNamespace

        public java.lang.String getNamespace()
        Specified by:
        getNamespace in interface org.kie.api.definition.KieDefinition
      • getFullName

        public java.lang.String getFullName()
      • getId

        public java.lang.String getId()
        Specified by:
        getId in interface org.kie.api.definition.KieDefinition
      • getOrder

        public int getOrder()
      • setOrder

        public void setOrder​(int order)
      • createTypeDeclarationForBean

        public static TypeDeclaration createTypeDeclarationForBean​(java.lang.Class<?> cls)
      • createTypeDeclarationForBean

        public static TypeDeclaration createTypeDeclarationForBean​(java.lang.Class<?> cls,
                                                                   org.kie.internal.builder.conf.PropertySpecificOption propertySpecificOption)
      • createTypeDeclarationForBean

        public static TypeDeclaration createTypeDeclarationForBean​(java.lang.Class<?> cls,
                                                                   Annotated annotated,
                                                                   org.kie.internal.builder.conf.PropertySpecificOption propertySpecificOption)
      • processTypeAnnotations

        public static void processTypeAnnotations​(TypeDeclaration type,
                                                  Annotated annotated,
                                                  org.kie.internal.builder.conf.PropertySpecificOption propertySpecificOption)