git.net

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: csv data format with ordered maps


Hi

I logged a ticket and implemented this
https://issues.apache.org/jira/browse/CAMEL-12332

The CsvRecordConverter is a public interface from camel-csv. You can
implement your own, and configure on the dataformat

On Wed, Mar 7, 2018 at 4:26 PM, Dennis Holunder <dennisholu@xxxxxxxxx> wrote:
> But you could make CsvRecordConverter public, so I could implement the
> mapper myself. Or you implement converting of CSVRecord to
> LinkedHashMap, shouldn't be a big deal
>
> 2018-03-07 16:17 GMT+01:00 Claus Ibsen-2 [via Camel]
> <ml+s465427n5818245h69@xxxxxxxxxxxxx>:
>> Hi
>>
>> Ah okay that is unfortunately in the commons-csv implementation. You
>> would need to report this to them.
>>
>> Sadly there is no way to get the mapping on CSVRecord so we can get
>> the column headers (we could maybe do some reflection as workaround).
>>
>> On Wed, Mar 7, 2018 at 3:29 PM, Dennis Holunder <[hidden email]> wrote:
>>
>>> in camel-csv component
>>> CsvRecordConverters.mapConverter().convertRecord(CSVRecord record)
>>>
>>> it calls CSVRecord.toMap() which returns HashMap but CSVRecord is in
>>> org.apache.commons.csv
>>>
>>> would be great if you could change it.
>>>
>>>
>>>
>>>
>>> 2018-03-07 13:13 GMT+01:00 Claus Ibsen-2 [via Camel]
>>> <[hidden email]>:
>>>> Hi
>>>>
>>>> Can you point to where it creates HashMap, maybe we can change that to
>>>> LinkedHashMap.
>>>>
>>>> On Wed, Mar 7, 2018 at 12:08 PM, Dennis Holunder <[hidden email]> wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I need a CSV record mapper which would use maps, but ordered ones,
>>>>> because I need the name of the first header field. Current
>>>>> implementation creates HashMaps, where the original order is lost.
>>>>>
>>>>> I tried to implement my own CsvRecordConverter to produce ordered map,
>>>>> but the interface is not public. This is not expected,
>>>>> CsvDataFormat.setRecordConverter has a public setter accepting this
>>>>> interface.
>>>>>
>>>>> Any workarounds?
>>>>>
>>>>> Den
>>>>
>>>>
>>>>
>>>> --
>>>> Claus Ibsen
>>>> -----------------
>>>> http://davsclaus.com @davsclaus
>>>> Camel in Action 2: https://www.manning.com/ibsen2
>>>>
>>>>
>>>> ________________________________
>>>> If you reply to this email, your message will be added to the discussion
>>>> below:
>>>>
>>>> http://camel.465427.n5.nabble.com/csv-data-format-with-ordered-maps-tp5818212p5818215.html
>>>> To unsubscribe from Camel, click here.
>>>> NAML
>>
>>
>>
>> --
>> Claus Ibsen
>> -----------------
>> http://davsclaus.com @davsclaus
>> Camel in Action 2: https://www.manning.com/ibsen2
>>
>>
>> ________________________________
>> If you reply to this email, your message will be added to the discussion
>> below:
>> http://camel.465427.n5.nabble.com/csv-data-format-with-ordered-maps-tp5818212p5818245.html
>> To unsubscribe from Camel, click here.
>> NAML



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2