We need to support file uploading to a server location (for testing etc.)
in addition to S3,HDFS  etc.

My question is why does file.save do it the way it does..

Operation Returns Description  File(String filename)Object

var file = new File("/templates/tmp.jag");

Takes a filename and provides a File object. (File path is relative to the
Jaggery application context root)

shouldn't it allow saving to any location..


On Tue, Oct 7, 2014 at 12:11 PM, Chan <[email protected]> wrote:

> Hi Lochana,
> Exactly. The correct method to store files is to use a separate file
> service (S3) or use HDFS/RDMS to store the files. Adding @sameeraM to the
> thread.
>
> Cheers~
>
> On Tue, Oct 7, 2014 at 12:09 PM, Lochana Menikarachchi <[email protected]>
> wrote:
>
>> Hi,
>>
>> >>File uploading brings about a number of issues in scalability. For
>> example - if we upload files to the deployments directory- it's not going
>> to scale properly (DepSync will sync all these files across the cluster if
>> DepSync enabled).
>>
>> This is exactly what is happening with current file save method,
>>
>> if you do following:
>>
>>     var carbon = require('carbon');
>>     var datasetService =
>> carbon.server.osgiService('org.wso2.carbon.ml.dataset.DatasetService');
>>     var uploadingLimit = datasetService.getDatasetUploadingLimit();
>>     var memThreshold = datasetService.getDatasetInMemoryThreshold();
>>     var uploadingDir = datasetService.getDatasetUploadingDir();
>>     var file = request.getFile("uploadDataset");
>>    * file.saveAs(uploadingDir+"/"+file.getName());*
>>
>> file gets saved under deployment directory.
>>
>> We need to upload the file into some other directory on the server..
>>
>>
>> On Tue, Oct 7, 2014 at 11:44 AM, Chan <[email protected]> wrote:
>>
>>> Hi Lochana,
>>> File uploading brings about a number of issues in scalability. For
>>> example - if we upload files to the deployments directory- it's not going
>>> to scale properly (DepSync will sync all these files across the cluster if
>>> DepSync enabled). Also saving a file to a specific path is inadvisable
>>> cause paths will depend upon deploying machine.
>>>
>>> Can you elaborate more on the requirement - where we can give a
>>> solution?
>>>
>>> Cheers~
>>>
>>> On Tue, Oct 7, 2014 at 10:50 AM, Lochana Menikarachchi <[email protected]
>>> > wrote:
>>>
>>>> Unfortunately, that's not going to work. Shouldn't there be a file
>>>> uploader in jaggery (that can upload a file to a given location)?
>>>>
>>>> On Tue, Oct 7, 2014 at 10:45 AM, Dilan Udara Ariyaratne <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Lochana!
>>>>>
>>>>> Do not know exactly whether their is a way to directly
>>>>> give an absolute path and save the file.
>>>>>
>>>>> BTW, as a workaround, if no such way exists, can you try to create the
>>>>> corresponding relative path for the given absolute one
>>>>> and use the same method provided.
>>>>>
>>>>> Cheers!
>>>>>
>>>>>
>>>>> *Dilan U. Ariyaratne*
>>>>> Software Engineer
>>>>> WSO2 Inc. <http://wso2.com/>
>>>>> Mobile: +94775149066
>>>>> lean . enterprise . middleware
>>>>>
>>>>> On Tue, Oct 7, 2014 at 10:29 AM, Lochana Menikarachchi <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Dilan, There is a specific requirement.. We need to upload a file to
>>>>>> a given location
>>>>>> Madhuka, That method returns absolute path.. What I want is to upload
>>>>>> a file to a given location (that is when absolute path is given as a 
>>>>>> string)
>>>>>> Thanks.
>>>>>>
>>>>>> On Tue, Oct 7, 2014 at 9:55 AM, madhuka udantha <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> you can do it. absolute path
>>>>>>>
>>>>>>>  var absolute = function (path) {
>>>>>>>         var systemProcess = require('process');
>>>>>>>         var parent = 'file:///' +
>>>>>>> (systemProcess.getProperty('jaggery.home') ||
>>>>>>> systemProcess.getProperty('carbon.home')).replace(/[\\]/g,
>>>>>>> '/').replace(/^[\/]/g, '');
>>>>>>>         return parent + MODULE_PATH + path;
>>>>>>>     };
>>>>>>>
>>>>>>> [1]
>>>>>>> https://github.com/Madhuka/sugarcane/blob/master/core/sugarcane/scripts/engine/test.js
>>>>>>> On Tue, Oct 7, 2014 at 9:37 AM, Lochana Menikarachchi <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Cheers,
>>>>>>> Madhuka Udantha
>>>>>>> http://madhukaudantha.blogspot.com
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Lochana Menikarachchi
>>>>>> Senior Tech Lead
>>>>>> WSO2 Inc.
>>>>>>
>>>>>> _______________________________________________
>>>>>> Dev mailing list
>>>>>> [email protected]
>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Lochana Menikarachchi
>>>> Senior Tech Lead
>>>> WSO2 Inc.
>>>>
>>>> _______________________________________________
>>>> Dev mailing list
>>>> [email protected]
>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>
>>>>
>>>
>>>
>>> --
>>> Chan (Dulitha Wijewantha)
>>> Software Engineer - Mobile Development
>>> WSO2 Inc
>>> Lean.Enterprise.Mobileware
>>>  * ~Email       [email protected] <[email protected]>*
>>> *  ~Mobile     +94712112165 <%2B94712112165>*
>>> *  ~Website   dulitha.me <http://dulitha.me>*
>>> *  ~Twitter     @dulitharw <https://twitter.com/dulitharw>*
>>>   *~Github     @dulichan <https://github.com/dulichan>*
>>>   *~SO     @chan <http://stackoverflow.com/users/813471/chan>*
>>>
>>
>>
>>
>> --
>> Lochana Menikarachchi
>> Senior Tech Lead
>> WSO2 Inc.
>>
>
>
>
> --
> Chan (Dulitha Wijewantha)
> Software Engineer - Mobile Development
> WSO2 Inc
> Lean.Enterprise.Mobileware
>  * ~Email       [email protected] <[email protected]>*
> *  ~Mobile     +94712112165 <%2B94712112165>*
> *  ~Website   dulitha.me <http://dulitha.me>*
> *  ~Twitter     @dulitharw <https://twitter.com/dulitharw>*
>   *~Github     @dulichan <https://github.com/dulichan>*
>   *~SO     @chan <http://stackoverflow.com/users/813471/chan>*
>



-- 
Lochana Menikarachchi
Senior Tech Lead
WSO2 Inc.
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to