Package net.shibboleth.idp.attribute.resolver.scripted

# Interface ScriptedIdPAttribute

All Known Implementing Classes:
  `ScriptedIdPAttributeImpl`

public interface ScriptedIdPAttribute
This is the API which is available to ECMAScripted attributes. This API is not targetted at JAVA users.

## Method Summary

Modifier and Type
Method
Description
`void`
`addValue(Object what)`
Add the provided object to the attribute values, policing for type.
`String`
`getId()`
Get the encapsulated attributeId.
`IdPAttribute`
`getNativeAttribute()`
return the underlying attribute.
`Collection<Object>`
`getValues()`
Return all the values, but with `StringAttributeValue` values returned as strings.

## Method Details

### getValues

@Nullable @Live Collection<Object> getValues() throws ResolutionException
Return all the values, but with `StringAttributeValue` values returned as strings.

Returns:
  a modifiable collection of the string attributes
Throws:
  `ResolutionException` - if the script has called `getNativeAttribute()`

### getNativeAttribute

@Nonnull IdPAttribute getNativeAttribute() throws ResolutionException
return the underlying attribute.

Returns:
  the attribute
Throws:
  `ResolutionException` - if the script has called getValues.

### getId

@Nonnull @NotEmpty String getId()
Get the encapsulated attributeId.

Returns:
  the id

### addValue

void addValue(@Nullable Object what) throws ResolutionException
Add the provided object to the attribute values, policing for type.

Parameters:
  `what` - a `String` or a `IdPAttributeValue` to add.
Throws:
  `ResolutionException` - if the provided value is of the wrong type