Creating new stream object in jaggery, I could access the input stream
returned by java method.

document.data = new Stream(new ByteArrayInputStream(content.get("Data")));

Thanks Denuwanthi for the help.

On Thu, Oct 22, 2015 at 12:04 PM, Lakshman Udayakantha <[email protected]>
wrote:

> Hi Denuwanthi,
>
> Thanks for the answer. Anyway I will not get file object from jaggery
> layer. content hashmap include a input stream object as a value for the key
> called "Data". I want to get that input stream object. Other values like
> name and contentType in hashmap can retrieve successfully from hash map.
> problem is that inputstream object will not be extractable from jaggery
> method.
>
> Thanks
>
> On Thu, Oct 22, 2015 at 10:48 AM, Denuwanthi De Silva <[email protected]
> > wrote:
>
>> Hi Lakshman,
>>
>> Did you try the following?
>>
>> var inputStream = Packages.java.io.InputStream;
>>
>> inputStream = file.getStream().getStream();
>>
>> (You need to call getStream() method twice)
>>
>>
>> Thanks,
>>
>>
>>
>>
>>
>>
>> On Wed, Oct 21, 2015 at 3:39 PM, Lakshman Udayakantha <[email protected]
>> > wrote:
>>
>>> Hi ES team,
>>>
>>> There is a method to get document from registry in API Manager Impl
>>> layer. We can get any file saved in registry with that method. But when I
>>> pass the returned file object to jaggery method, jaggery layer gets an
>>> empty object.
>>>
>>> public static Map<String, Object> getDocument(String userName, String
>>> resourceUrl,
>>>                                               String tenantDomain)
>>>  {
>>>     Map<String, Object> documentMap = new HashMap<String, Object>();
>>>
>>>     InputStream inStream = null;
>>>
>>>     Resource apiDocResource;
>>>
>>>             inStream = apiDocResource.getContentStream();
>>>             documentMap.put("Data", inStream);
>>>             documentMap.put("contentType",
>>> apiDocResource.getMediaType());
>>>             String[] content = apiDocResource.getPath().split("/");
>>>             documentMap.put("name", content[content.length - 1]);
>>>
>>>     return documentMap;
>>> }
>>> above is the getDocument method. It gets the document from registry and
>>> put into a hash map. Below is the jaggery method to get the file where I
>>> can get the hash map values successfully but the file content.
>>>
>>>  StoreAPIProxy.prototype.getDocument = function (username, resourcepath,
>>> tenantDomain) {
>>>         var document = {};
>>>
>>>             var content = APIUtil.getDocument(username, resourcepath,
>>> tenantDomain);
>>>             document.data = content.get("Data");
>>>             document.contentType = content.get("contentType");
>>>             document.name = content.get("name");
>>>
>>>             return {
>>>                 error:false,
>>>                 document:document
>>>             };
>>>         }
>>>     };
>>>
>>> How do I get the InputStream object returns by java method to jaggery
>>> method?
>>>
>>> Thanks
>>> --
>>> Lakshman Udayakantha
>>> WSO2 Inc. www.wso2.com
>>> lean.enterprise.middleware
>>> Mobile: *0711241005*
>>>
>>>
>>> _______________________________________________
>>> Dev mailing list
>>> [email protected]
>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>
>>>
>>
>>
>> --
>> Denuwanthi De Silva
>> Software Engineer;
>> WSO2 Inc.; http://wso2.com,
>> Email: [email protected]
>> Blog: https://denuwanthi.wordpress.com/
>>
>
>
>
> --
> Lakshman Udayakantha
> WSO2 Inc. www.wso2.com
> lean.enterprise.middleware
> Mobile: *0711241005*
>
>


-- 
Lakshman Udayakantha
WSO2 Inc. www.wso2.com
lean.enterprise.middleware
Mobile: *0711241005*
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to