private <C, V extends Identity> V readConfig( UnitOfWork uow,
Class<C> compositeType,
Class<V> configType,
String identity,
String format,
String extension
)
{
for( ServiceReference<ValueSerialization> serializerRef : valueSerialization )
{
ServiceTags serviceTags = serializerRef.metaInfo( ServiceTags.class );
if( serviceTags.hasTag( format ) )
{
String resourceName = identity + extension;
InputStream asStream = getResource( compositeType, resourceName );
if( asStream != null )
{
V configObject = serializerRef.get().deserialize( configType, asStream );
return uow.toEntity( configType, configObject );
}
}
}
return null;
}
}