Package org.apache.sling.models.impl.model

# Interface InjectableElement

All Known Implementing Classes:
  `ConstructorParameter`, `InjectableField`, `InjectableMethod`, `OptionalTypedInjectableElement`

public interface InjectableElement

## Method Summary

Modifier and Type
Method
Description
`AnnotatedElement`
`getAnnotatedElement()`
`Object`
`getDefaultValue()`
`String`
`getName()`
`String`
`getSource()`
`Type`
`getType()`
`String`
`getVia()`
`Class<? extends org.apache.sling.models.annotations.ViaProviderType>`
`getViaProviderType()`
`boolean`
`hasDefaultValue()`
`boolean`
`isOptional(org.apache.sling.models.spi.injectorspecific.InjectAnnotationProcessor annotationProcessor)`
`boolean`
`isPrimitive()`

## Method Details

### getAnnotatedElement

AnnotatedElement getAnnotatedElement()

Returns:
  Underlying annotated element

### getType

Type getType()

Returns:
  Type of injectable mapped to wrapper class

### isPrimitive

boolean isPrimitive()

Returns:
  true if original type of injectable is a primitive type

### getName

String getName()

Returns:
  Name for injection

### getSource

String getSource()

Returns:
  Via annotation or null

### getVia

String getVia()

Returns:
  Via annotation or null

### getViaProviderType

Class<? extends org.apache.sling.models.annotations.ViaProviderType> getViaProviderType()

### hasDefaultValue

boolean hasDefaultValue()

Returns:
  true, if a default value is set

### getDefaultValue

Object getDefaultValue()

Returns:
  Default value or null

### isOptional

boolean isOptional(org.apache.sling.models.spi.injectorspecific.InjectAnnotationProcessor annotationProcessor)

Parameters:
  `annotationProcessor` - Annotation processor
Returns:
  `true` if the element is optional otherwise `false`