[kepler-users] Size Limitation of ArrayTokens?

Christopher Brooks cxh at eecs.berkeley.edu
Mon May 21 09:32:18 PDT 2012


HI Stefan,
A quick search of the web shows no apparent limits.
A more complete test case would help.

The way I would approach this is by splitting up the problem into first 
just reading the data and being sure that worked and then adding more 
like encoding.

_Christopher

On 5/21/12 9:20 AM, Stefan Proell wrote:
> Dear Mailing list,
> I wrote my own Actor which I need in order to encode binary files via 
> Base64 and pass the resulting encoded String to a REST Service. I feed 
> the binary file with a BinaryFileReader-Actor to my encoding Actor and 
> cast the Token to an Array, as I found no other solution to receive 
> the bytes from the file. I then use a standard (and also deprecated) 
> method for encoding the file first to Base64 and then send it through 
> some URL-safe encoding. The method looks like this:
>
>
> @Override
>     public void fire() throws IllegalActionException {
>
>         super.fire();
>
>         // Read file from InputPort  and convert to a ByteArray
>         ArrayToken inputToken = (ArrayToken) inputPort.get(0);
>         byte[] inputBytes = 
> ArrayToken.arrayTokenToUnsignedByteArray(inputToken);
>
>         // Encoding
>         String encode = new  String(Base64.encodeBase64(inputBytes));
>         String encodedString = java.net.URLEncoder.encode(encode);
>
>         output.send(0, new StringToken(encodedString));
>
>     }
>
> My problem is that the encoded file is truncated by the actor and 
> hence not usable for further processing. There seems to be a limit of 
> 20 000 array elements (bytes), which is not sufficient for my purpose. 
> Does anyone have an idea why the file is chopped off after 20k letters?
>
> Thanks in advance,
> Stefan
>
> _______________________________________________
> Kepler-users mailing list
> Kepler-users at kepler-project.org
> http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users

-- 
Christopher Brooks, PMP                       University of California
CHESS Executive Director                      US Mail: 337 Cory Hall
Programmer/Analyst CHESS/Ptolemy/Trust        Berkeley, CA 94720-1774
ph: 510.643.9841                                (Office: 545Q Cory)
home: (F-Tu) 707.665.0131 cell: 707.332.0670



More information about the Kepler-users mailing list