* @param attrs The attributes
* @return The PropertyMetaData
*/
protected PropertyMetaData newPropertyObject(MetaData md, Attributes attrs)
{
PropertyMetaData pmd = new PropertyMetaData(md, getAttr(attrs,"name"));
pmd.setPersistenceModifier(getAttr(attrs,"persistence-modifier"));
pmd.setDeleteAction(getAttr(attrs,"delete-action"));
pmd.setPrimaryKey(getAttr(attrs,"primary-key"));
pmd.setDefaultFetchGroup(getAttr(attrs,"default-fetch-group"));
pmd.setEmbedded(getAttr(attrs,"embedded"));
pmd.setSerialised(getAttr(attrs,"serialized"));
pmd.setDependent(getAttr(attrs,"dependent"));
pmd.setNullValue(NullValue.getNullValue(getAttr(attrs,"null-value")));
pmd.setMappedBy(getAttr(attrs,"mapped-by"));
pmd.setColumn(getAttr(attrs,"column"));
pmd.setIndexed(IndexedValue.getIndexedValue(getAttr(attrs,"indexed")));
pmd.setUnique(getAttr(attrs,"unique"));
pmd.setTable(getAttr(attrs, "table"));
pmd.setLoadFetchGroup(getAttr(attrs,"load-fetch-group"));
pmd.setRecursionDepth(getAttr(attrs,"recursion-depth"));
pmd.setValueStrategy(getAttr(attrs,"value-strategy"));
pmd.setSequence(getAttr(attrs,"sequence"));
pmd.setFieldTypes(getAttr(attrs,"field-type"));
pmd.setFieldName(getAttr(attrs,"field-name"));
String cacheableAttr = getAttr(attrs, "cacheable");
if (cacheableAttr != null)
{
pmd.setCacheable(cacheableAttr.equalsIgnoreCase("false") ? false : true);
}
return pmd;
}