{
try
{
final String name = block.getAttribute( "name" );
final String classname = block.getAttribute( "class" );
final Configuration proxy = block.getChild( "proxy" );
final boolean disableProxy =
proxy.getAttributeAsBoolean( "disable", false );
final Configuration[] provides = block.getChildren( "provide" );
final DependencyDirective[] dependencys = buildDependencies(
provides );
final Configuration configuration = config.getChild( name );
return new ComponentTemplate( name, classname,
dependencys, null,
configuration,
disableProxy );