Hi
I have started to do developments in the develop branch and get some issues with the JPA data layer, possibly due to a lack of expertise with the new code.
If someone can provide some clarifications would be really great, thanks in advance:
1) What is the purpose of the *ListenerManager classes? Should each entity have one?
2) Is there any guideline to define relations between entities?
I see for example in the Metadata entity the categories are defined like:
private Set _metadataCategories = new HashSet();
But not others like metadata statuses or privileges that are commented:
// private List _metadataStatus;
// private Set operations = new HashSet();
3) There’re some Identifier entities like: MetadataRelationId, but not clear about when to define them. Seem like a “replacement” instead of modelling relationships in the entity classes.
What is the advantage of using this Identifier entities approach?
Any other implications? What about the foreign keys between entities, for example?
4) Is there any guideline to build queries/specifications that require to join tables to filter the results.
I understand from Metadata entity, that filtering by categories should be quite simple as categories are part of the Metadata entity.
But not very clear how to manage for example to retrieve metadata that has a specific status or allowed to certain groups? I guess a join of the entities should be done (any example would be great)?
Has this approach any performance penalties? (related to points 2/3)
Regards,
Jose García
–
GeoCat Bridge for ArcGIS allows instant publishing of data and metadata on GeoServer and GeoNetwork. Visit http://geocat.net for details.
Jose García
GeoCat bv
Veenderweg 13
6721 WD Bennekom
The Netherlands
http://GeoCat.net