in src/main/java/org/apache/directory/fortress/rest/FortressInterceptor.java [184:232]
private String getRoles( Annotation[] anns, String annName )
{
LOG.debug( "FortressInterceptor.getRoles:" + annName );
for ( Annotation ann : anns )
{
if ( ann.annotationType().getName().equals( annName ) )
{
try
{
Method valueMethod = ann.annotationType().getMethod( "value", new Class[]{} );
String[] roles = (String[]) valueMethod.invoke( ann, new Object[]{} );
StringBuilder sb = new StringBuilder();
boolean isFirst = false;
for ( String role : roles )
{
if ( isFirst )
{
isFirst = false;
}
else
{
sb.append( " " );
}
sb.append( role );
}
return sb.toString();
}
catch ( NoSuchMethodException ex )
{
LOG.info( "FortressInterceptor.getRoles annName=" + annName + ", caught NoSuchMethodException=" + ex );
}
catch ( IllegalAccessException ex )
{
LOG.info( "FortressInterceptor.getRoles annName=" + annName + ", caught IllegalAccessException=" + ex );
}
catch ( InvocationTargetException ex )
{
LOG.info( "FortressInterceptor.getRoles annName=" + annName + ", caught InvocationTargetException=" + ex );
}
break;
}
}
return null;
}