From: Andreas Kohlbecker Date: Fri, 9 Jul 2010 14:00:16 +0000 (+0000) Subject: futher implementations and fixes regarding DerivedUnitFacadeController X-Git-Tag: 3.0.3~992 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/cdmlib.git/commitdiff_plain/d94ae8ac05e2bf2dbad253b965223e9ce8383e57 futher implementations and fixes regarding DerivedUnitFacadeController --- diff --git a/.gitattributes b/.gitattributes index 55e60e9834..c648b63554 100644 --- a/.gitattributes +++ b/.gitattributes @@ -2604,6 +2604,7 @@ cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/bean/TaxonRel cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/bean/TaxonomyNodeBeanProcessor.java -text cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/bean/TermBaseBeanProcessor.java -text cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/bean/TextDataBeanProcessor.java -text +cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/bean/TypeDesignationBaseBeanProcessor.java -text cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/matcher/CGLibEnhancedBeanProcessorMatcher.java -text cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/matcher/CdmProxyBeanProcessorMatcher.java -text cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/matcher/HibernateJSONValueProcessorMatcher.java -text diff --git a/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/name/TypeDesignationBase.java b/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/name/TypeDesignationBase.java index dfe7386689..e577866ab2 100644 --- a/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/name/TypeDesignationBase.java +++ b/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/name/TypeDesignationBase.java @@ -63,6 +63,9 @@ import eu.etaxonomy.cdm.model.reference.ReferenceBase; @Audited @Inheritance(strategy=InheritanceType.SINGLE_TABLE) public abstract class TypeDesignationBase extends ReferencedEntityBase implements ITypeDesignation { + + private static final long serialVersionUID = 1L; + @SuppressWarnings("unused") private static final Logger logger = Logger.getLogger(TypeDesignationBase.class); diff --git a/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/occurrence/SpecimenOrObservationBase.java b/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/occurrence/SpecimenOrObservationBase.java index f4173d943e..572e5e5088 100644 --- a/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/occurrence/SpecimenOrObservationBase.java +++ b/cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/occurrence/SpecimenOrObservationBase.java @@ -159,6 +159,7 @@ public abstract class SpecimenOrObservationBase getSpecimenDescriptions() { return getSpecimenDescriptions(true); } diff --git a/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/NameController.java b/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/NameController.java index 7da79db00c..75e1fb0b10 100644 --- a/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/NameController.java +++ b/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/NameController.java @@ -50,9 +50,10 @@ public class NameController extends AnnotatableController TYPEDESIGNATION_INIT_STRATEGY = Arrays.asList(new String []{ - "$", - "citation.authorTeam", - "typifiedNames.taggedName" + "typeStatus.representations", + "typifiedNames.titleCache", + "typeSpecimen.titleCache", + }); private static final List NAME_CACHE_INIT_STRATEGY = Arrays.asList(new String []{ @@ -94,7 +95,7 @@ public class NameController extends AnnotatableController doGetNameDesignations(HttpServletRequest request, HttpServletResponse response)throws IOException { + public List doGetNameTypeDesignations(HttpServletRequest request, HttpServletResponse response)throws IOException { TaxonNameBase tnb = getCdmBase(request, response, null, TaxonNameBase.class); Pager p = service.getTypeDesignations(tnb, null, null, null, TYPEDESIGNATION_INIT_STRATEGY); return p.getRecords(); diff --git a/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/TaxonPortalController.java b/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/TaxonPortalController.java index d0d6480122..943f6820b0 100644 --- a/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/TaxonPortalController.java +++ b/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/controller/TaxonPortalController.java @@ -560,7 +560,9 @@ public class TaxonPortalController extends BaseController { + + /* (non-Javadoc) + * @see eu.etaxonomy.cdm.remote.json.processor.bean.AbstractCdmBeanProcessor#getIgnorePropNames() + */ + @Override + public List getIgnorePropNames() { + return null; + } + + /* (non-Javadoc) + * @see eu.etaxonomy.cdm.remote.json.processor.bean.AbstractCdmBeanProcessor#processBeanSecondStep(eu.etaxonomy.cdm.model.common.CdmBase, net.sf.json.JSONObject, net.sf.json.JsonConfig) + */ + @Override + public JSONObject processBeanSecondStep(TypeDesignationBase bean, JSONObject json, JsonConfig jsonConfig) { + json.element("typeStatus", bean.getTypeStatus(), jsonConfig); + if(bean.getClass().isAssignableFrom(SpecimenTypeDesignation.class)){ + json.element("typeSpecimen", ((SpecimenTypeDesignation)bean).getTypeSpecimen(), jsonConfig); + } else if (bean.getClass().isAssignableFrom(NameTypeDesignation.class)){ + json.element("typeName", ((NameTypeDesignation)bean).getTypeName(), jsonConfig); + } + return json; + } + +} diff --git a/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/matcher/CdmProxyBeanProcessorMatcher.java b/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/matcher/CdmProxyBeanProcessorMatcher.java index 716a88ddaa..eba316276b 100644 --- a/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/matcher/CdmProxyBeanProcessorMatcher.java +++ b/cdmlib-remote/src/main/java/eu/etaxonomy/cdm/remote/json/processor/matcher/CdmProxyBeanProcessorMatcher.java @@ -23,6 +23,7 @@ import eu.etaxonomy.cdm.model.description.TextData; import eu.etaxonomy.cdm.model.media.Media; import eu.etaxonomy.cdm.model.name.NameRelationship; import eu.etaxonomy.cdm.model.name.TaxonNameBase; +import eu.etaxonomy.cdm.model.name.TypeDesignationBase; import eu.etaxonomy.cdm.model.reference.ReferenceBase; import eu.etaxonomy.cdm.model.taxon.Taxon; import eu.etaxonomy.cdm.model.taxon.TaxonRelationship; @@ -60,18 +61,21 @@ public class CdmProxyBeanProcessorMatcher extends JsonBeanProcessorMatcher { if (TermBase.class.isAssignableFrom(target)) { return DEFAULT.getMatch(TermBase.class, set); } - if (NameRelationship.class.isAssignableFrom(target)) { - return DEFAULT.getMatch(NameRelationship.class, set); - } - if (TaxonRelationship.class.isAssignableFrom(target)) { - return DEFAULT.getMatch(TaxonRelationship.class, set); - } +// if (NameRelationship.class.isAssignableFrom(target)) { +// return DEFAULT.getMatch(NameRelationship.class, set); +// } +// if (TaxonRelationship.class.isAssignableFrom(target)) { +// return DEFAULT.getMatch(TaxonRelationship.class, set); +// } if (Media.class.isAssignableFrom(target)) { return DEFAULT.getMatch(Media.class, set); } if (ReferenceBase.class.isAssignableFrom(target)) { return DEFAULT.getMatch(ReferenceBase.class, set); } + if (TypeDesignationBase.class.isAssignableFrom(target)) { + return DEFAULT.getMatch(TypeDesignationBase.class, set); + } return DEFAULT.getMatch(target, set); } diff --git a/cdmlib-remote/src/main/webapp/WEB-INF/jsonConfigurations.xml b/cdmlib-remote/src/main/webapp/WEB-INF/jsonConfigurations.xml index a51317b5db..ab38304273 100644 --- a/cdmlib-remote/src/main/webapp/WEB-INF/jsonConfigurations.xml +++ b/cdmlib-remote/src/main/webapp/WEB-INF/jsonConfigurations.xml @@ -20,31 +20,34 @@ class="eu.etaxonomy.cdm.remote.json.processor.matcher.CdmProxyBeanProcessorMatcher" /> - - - - - - - - - partOf - kindOf - infraGenericMarker - - - - - - - - - - - - - - + + + + + + + + + partOf + kindOf + infraGenericMarker + + + + + + + + + + + + + + + + +