public void save(Object projo)
throws PreferencesException, EntityMetadataException
{
SettingsEntityMetadata metadata = metadataReader.read(projo.getClass());
if (metadata == null)
throw new EntityMetadataException("Not a Projo: " + projo.getClass().getCanonicalName());
PreferenceNode nodeToUse = nodeToUseForMetadata(metadata);
saveInternal(projo, metadata, nodeToUse);
}