Details
-
New Feature
-
Resolution: Fixed
-
Major
-
None
-
None
-
None
-
All
-
GreenHopper Ranking:0|i120pv:
-
9223372036854775807
-
27
-
Small
Description
Now we need to support the db mappings for the jdbc components, it's a common function, for doing that, need to know some basic knowledge for that :
We have several classes for doing that :
1. org.talend.core.model.metadata.MetadataTalendType, MappingTypeRetriever : they works for the studio and also javajet inside at code generation time(not runtime),
2. routines.system.MetadataTalendType : for the dynamic support majorly at runtime
So we need to adjust them or copy them to make they can be accessed at tcomp runtime(seems the definition part don't need it).
What need to use in my opinion :
1. the whole routines.system.MetadataTalendType
2. some methods in org.talend.core.model.metadata.MetadataTalendType and MappingTypeRetriever, not all as some methods only works for studio part, and some methods are duplicated with routines.system.MetadataTalendType, need to use :
isLengthIgnored isPrecisionIgnored isPreBeforeLength
Wiki page: https://wiki.talend.com/display/rd/Database+metadata+types+mapping
Task decomposition:
- Design and implement improved mapping class model (Dbms)
- Design and implement mapping file (configuration) parser
- Find a way to reuse same code both in Studio and components
- Refactor MappingTypeRetriever to use new version of Dbms class
- Refactor Studio classes to use new parser (Studio should provide path to configuration file) and Dbms class
- Implement analog of "Manager" class which provides common functionality for database components