}
writer.write( "\n <dependencies>" );
for( int i = 0; i < dependencies.length; i++ )
{
final DependencyDescriptor dependency = dependencies[ i ];
writer.write( "\n <dependency " );
if( !dependency.getKey().equals( dependency.getReference().getClassname() ) )
{
writer.write( "key=\"" );
writer.write( dependency.getKey() );
writer.write( "\" " );
}
writer.write( "type=\"" );
writer.write( dependency.getReference().getClassname() );
if( dependency.getReference().getVersion().getMajor() > -1 )
{
writer.write( "\" version=\"" );
writer.write( dependency.getReference().getVersion().toString() );
}
if( dependency.isOptional() )
{
writer.write( "\" optional=\"true" );
}
final int count = dependency.getAttributeNames().length;
if( 0 == count )
{
writer.write( "\"/>" );
}
else