[
https://issues.apache.org/jira/browse/SQOOP-1901?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Veena Basavaraj updated SQOOP-1901:
-----------------------------------
Description:
As the title suggests, we want to encourage DRY code in the new IDF
implementations.
As the IDF api mandates CSV and object format for all its sub implementation, I
propose we move the common functionality to the base IDF class so that JSON IDF
or AvroIDF does not have to repeat this code.
The only parts of the code that needs to be in subclasses is how then handle
the conversion between the "T" ( generic parameter) and the csv/ object
representations.
I saw that http://ingest.tips/2014/12/11/sqoop-1-99-4-release/ mentions
extensind from CSVIDF and this cannot technically work since we have the
generic T that will be different for AvroIDF or JSON IDF
Update:
Also extending from CSVIDF seems a bit ilogical, since the IDF API says that it
needs CSV and object Array, these functionality of converting between the two
i.e text to object and object to text should be in base class.
was:
As the title suggests, we want to encourage DRY code in the new IDF
implementations.
As the IDF api mandates CSV and object format for all its sub implementation, I
propose we move the common functionality to the base IDF class so that JSON IDF
or AvroIDF does not have to repeat this code.
The only parts of the code that needs to be in subclasses is how then handle
the conversion between the "T" ( generic parameter) and the csv/ object
representations.
I saw that http://ingest.tips/2014/12/11/sqoop-1-99-4-release/ mentions
extensing from CSVIDF and this cannot technically work since we have the
generic T that will be different for AvroIDF or JSON IDF
> Supporting DRY code in new IDF impementations
> ---------------------------------------------
>
> Key: SQOOP-1901
> URL: https://issues.apache.org/jira/browse/SQOOP-1901
> Project: Sqoop
> Issue Type: Sub-task
> Components: sqoop2-framework
> Reporter: Veena Basavaraj
> Fix For: 1.99.5
>
>
> As the title suggests, we want to encourage DRY code in the new IDF
> implementations.
> As the IDF api mandates CSV and object format for all its sub implementation,
> I propose we move the common functionality to the base IDF class so that JSON
> IDF or AvroIDF does not have to repeat this code.
> The only parts of the code that needs to be in subclasses is how then handle
> the conversion between the "T" ( generic parameter) and the csv/ object
> representations.
> I saw that http://ingest.tips/2014/12/11/sqoop-1-99-4-release/ mentions
> extensind from CSVIDF and this cannot technically work since we have the
> generic T that will be different for AvroIDF or JSON IDF
> Update:
> Also extending from CSVIDF seems a bit ilogical, since the IDF API says that
> it needs CSV and object Array, these functionality of converting between the
> two i.e text to object and object to text should be in base class.
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)