[
https://jira.jboss.org/jira/browse/JBIDE-4269?page=com.atlassian.jira.plu...
]
Dmitry Geraskov updated JBIDE-4269:
-----------------------------------
Attachment: patch.txt
Added to base interface set/getFilter methods. Filter is an interface with only 1 method
public void accept(Object o). Each exporter could use this filter field in internal logic
as it want-this gives much flexibility to developers. Also developers must aware about
null-filter. GenericExporter passes in the filter PojoClass's objects. Test shows how
it works.
From other hand in my realization filter should know about Exporter
objects ( like PojoClass)
Provide a way to filter out elements which will be generated by
exporter.
-------------------------------------------------------------------------
Key: JBIDE-4269
URL:
https://jira.jboss.org/jira/browse/JBIDE-4269
Project: Tools (JBoss Tools)
Issue Type: Feature Request
Components: Hibernate
Affects Versions: 3.1.0.M1
Reporter: Dmitry Geraskov
Assignee: Dmitry Geraskov
Fix For: 3.1.0.M1
Attachments: patch.txt
Now exporter uses Configuration object to get for example pojo's for generation.
After this it calls generation for each of them.
We need to add some filter for this.
First place for such injection is ArtifactCollector as developer can easily specify
subclass of this class and set it to exporter.
Also TemplateProducer which used for files generating always gets ArtifactCollector
object in constructor from exporter and has access to it.
I' going to add methods filter(Map context), setFilter(Filter) to ArtifactCollector
class and call it when necessary in template producer.
Method 'filter' by default will not filter out anything. Non default realizations
should use context map to get any objects which is passed to template producer.
Second variant is to add Filter field to Generic exporter and call for filtering in
GenericExporter.exportPOJO() method(or in each realization of ModelIterator.process()).
I prefer first way.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira