{
final SarPolicyResolver resolver = new SarPolicyResolver(
baseDirectory, workDirectory );
setupLogger( resolver );
final PolicyBuilder builder = new PolicyBuilder();
final PolicyReader reader = new PolicyReader();
final SarPolicyVerifier verifier = new SarPolicyVerifier();
setupLogger( verifier );
final Element element = ConfigurationUtil.toElement( configuration );
final HashMap newData = new HashMap();
newData.putAll( m_data );
newData.putAll( data );
newData.put( "/", File.separator );
m_expander.expandValues( element, newData );
element.setAttribute( "version", "1.0" );
try
{
final PolicyMetaData policy = reader.readPolicy( element );
verifier.verifyPolicy( policy );
return builder.buildPolicy( policy, resolver );
}
catch( final Exception e )
{