65.9K
CodeProject is changing. Read more.
Home

Mule ESB: Creating a Simple Synchronous File Reader

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0 vote)

Aug 28, 2016

CPOL
viewsIcon

9469

Creating a simple Synchronous File Reader

In this tip, I will show you how to create a very simple Synchronous File Reader inside your Mule flow.

You just need to add these lines of code in your Java component class, which will enable you to read a File in between the flow.

I hope this helps!

package org.rahul.util;

import java.io.File;

import org.mule.api.MuleEventContext;
import org.mule.api.lifecycle.Callable;

public class SynchronousFileReader implements Callable{

public File getFileContent(String fileLocation)
{
File file = new File(fileLocation);
return file;
}

@Override
public Object onCall(MuleEventContext eventContext) throws Exception {

String filepath = eventContext.getMessage().getInvocationProperty("filepath");
File file = getFileContent(filepath);
return file;
}
}

Sample Usage:

<component class="org.rahul.util.SynchronousFileReader" 
doc:name="Java"/>
        <!-- File as Binary -->
        <file:file-to-byte-array-transformer doc:name="File to Byte Array" 
        mimeType="binary/octet-stream"/>

Use transformers like File-to-String or File-to-Byte-Array Transformer according to your requirement, after using this Java component.