You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Jose Luis Pedrosa (JIRA)" <ji...@apache.org> on 2016/04/08 09:37:25 UTC

[jira] [Updated] (CAMEL-9836) Add file id of the gridfs file created in the header of the exchange

     [ https://issues.apache.org/jira/browse/CAMEL-9836?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jose Luis Pedrosa updated CAMEL-9836:
-------------------------------------
    Fix Version/s: 2.18.0
                   2.17.1

> Add file id of the gridfs file created in the header of the exchange
> --------------------------------------------------------------------
>
>                 Key: CAMEL-9836
>                 URL: https://issues.apache.org/jira/browse/CAMEL-9836
>             Project: Camel
>          Issue Type: Wish
>          Components: camel-mongodb
>    Affects Versions: 2.17.0
>         Environment: Any
>            Reporter: Jose Luis Pedrosa
>            Priority: Minor
>             Fix For: 2.17.1, 2.18.0
>
>
> Currently the camel-mongodb-gridfs component (which is not available in this Jira) when a file is cretated does not return back the Id (_id) of the file created, it only returns  the filename
> {code}
> String metaData = exchange.getIn().getHeader(GridFsEndpoint.GRIDFS_METADATA, String.class);
>             DBObject dbObject = (DBObject) JSON.parse(metaData);
>             gfsFile.setMetaData(dbObject);
>             gfsFile.save();
>             exchange.getIn().setHeader(Exchange.FILE_NAME_PRODUCED, gfsFile.getFilename());
> {code}
> mongodb api has the method getid: http://api.mongodb.org/java/current/com/mongodb/gridfs/GridFSFile.html#getId--
> So i'd like to ask to:
> a) create a header field (maybe GridFsEndpoint.GRIDFS_FILE_ID_PRODUCED)
> b) Add the header after the creation
> {code}
> String metaData = exchange.getIn().getHeader(GridFsEndpoint.GRIDFS_METADATA, String.class);
>             DBObject dbObject = (DBObject) JSON.parse(metaData);
>             gfsFile.setMetaData(dbObject);
>             gfsFile.save();
>             exchange.getIn().setHeader(Exchange.FILE_NAME_PRODUCED, gfsFile.getFilename());
>             exchange.getIn().setHeader(GridFsEndpoint.GRIDFS_FILE_ID_PRODUCED, gfsFile.getId());
> {code}
> Of course I can create a PR myself, but I think the administrative work would be more? Up to you guys.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)