Class Parameter

  • All Implemented Interfaces:
    Writable

    public class Parameter
    extends ModelElement
    A parameter of a mapping method.
    • Field Detail

      • element

        private final javax.lang.model.element.Element element
      • name

        private final java.lang.String name
      • originalName

        private final java.lang.String originalName
      • type

        private final Type type
      • mappingTarget

        private final boolean mappingTarget
      • targetType

        private final boolean targetType
      • mappingContext

        private final boolean mappingContext
      • varArgs

        private final boolean varArgs
    • Constructor Detail

      • Parameter

        private Parameter​(javax.lang.model.element.Element element,
                          Type type,
                          boolean varArgs)
      • Parameter

        private Parameter​(java.lang.String name,
                          Type type,
                          boolean mappingTarget,
                          boolean targetType,
                          boolean mappingContext,
                          boolean varArgs)
      • Parameter

        public Parameter​(java.lang.String name,
                         Type type)
    • Method Detail

      • getElement

        public javax.lang.model.element.Element getElement()
      • getName

        public java.lang.String getName()
      • getOriginalName

        public java.lang.String getOriginalName()
      • getType

        public Type getType()
      • isMappingTarget

        public boolean isMappingTarget()
      • toString

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

        public java.lang.String describe()
      • format

        private java.lang.String format()
      • getImportTypes

        public java.util.Set<Type> getImportTypes()
        Description copied from class: ModelElement
        Returns a set containing those Types referenced by this model element for which an import statement needs to be declared.
        Specified by:
        getImportTypes in class ModelElement
        Returns:
        A set with type referenced by this model element. Must not be null.
      • isTargetType

        public boolean isTargetType()
      • isMappingContext

        public boolean isMappingContext()
      • isVarArgs

        public boolean isVarArgs()
      • hashCode

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

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • forElementAndType

        public static Parameter forElementAndType​(javax.lang.model.element.VariableElement element,
                                                  Type parameterType,
                                                  boolean isVarArgs)
      • forForgedMappingTarget

        public static Parameter forForgedMappingTarget​(Type parameterType)
      • getSourceParameters

        public static java.util.List<Parameter> getSourceParameters​(java.util.List<Parameter> parameters)
        Parameters:
        parameters - the parameters to filter
        Returns:
        the parameters from the given list that are considered 'source parameters'
      • getSourceParameter

        public static Parameter getSourceParameter​(java.util.List<Parameter> parameters,
                                                   java.lang.String sourceParameterName)
        Parameters:
        parameters - the parameters to scan
        sourceParameterName - the source parameter name to match
        Returns:
        the parameters from the given list that are considered 'source parameters'
      • getContextParameters

        public static java.util.List<Parameter> getContextParameters​(java.util.List<Parameter> parameters)
        Parameters:
        parameters - the parameters to filter
        Returns:
        the parameters from the given list that are marked as 'mapping context parameters'
      • getMappingTargetParameter

        public static Parameter getMappingTargetParameter​(java.util.List<Parameter> parameters)
      • getTargetTypeParameter

        public static Parameter getTargetTypeParameter​(java.util.List<Parameter> parameters)
      • isSourceParameter

        private static boolean isSourceParameter​(Parameter parameter)