INT-1067: backported fix for INT-950
This commit is contained in:
@@ -50,6 +50,7 @@ abstract class FileWritingMessageHandlerBeanDefinitionBuilder {
|
||||
}
|
||||
IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "auto-create-directory");
|
||||
IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "delete-source-files");
|
||||
IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "charset");
|
||||
String fileNameGenerator = element.getAttribute("filename-generator");
|
||||
if (StringUtils.hasText(fileNameGenerator)) {
|
||||
builder.addPropertyReference("fileNameGenerator", fileNameGenerator);
|
||||
|
||||
@@ -184,6 +184,7 @@
|
||||
</xsd:annotation>
|
||||
</xsd:attribute>
|
||||
<xsd:attribute name="auto-startup" type="xsd:string"/>
|
||||
<xsd:attribute name="charset" type="xsd:string"/>
|
||||
</xsd:complexType>
|
||||
|
||||
<xsd:element name="file-to-string-transformer">
|
||||
|
||||
@@ -28,7 +28,12 @@
|
||||
channel="testChannel"
|
||||
delete-source-files="true"
|
||||
directory="${java.io.tmpdir}"/>
|
||||
|
||||
|
||||
<file:outbound-channel-adapter id="adapterWithCharset"
|
||||
channel="testChannel"
|
||||
charset="UTF-8"
|
||||
directory="${java.io.tmpdir}"/>
|
||||
|
||||
<file:outbound-channel-adapter id="adapterWithOrder"
|
||||
channel="testChannel"
|
||||
order="555"
|
||||
|
||||
@@ -20,6 +20,7 @@ import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.io.File;
|
||||
import java.nio.charset.Charset;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
@@ -56,7 +57,10 @@ public class FileOutboundChannelAdapterParserTests {
|
||||
@Autowired
|
||||
@Qualifier("adapterWithOrder")
|
||||
EventDrivenConsumer adapterWithOrder;
|
||||
|
||||
|
||||
@Autowired
|
||||
@Qualifier("adapterWithCharset")
|
||||
EventDrivenConsumer adapterWithCharset;
|
||||
|
||||
@Test
|
||||
public void simpleAdapter() {
|
||||
@@ -106,5 +110,14 @@ public class FileOutboundChannelAdapterParserTests {
|
||||
DirectFieldAccessor adapterAccessor = new DirectFieldAccessor(adapterWithOrder);
|
||||
assertEquals(Boolean.FALSE, adapterAccessor.getPropertyValue("autoStartup"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void adapterWithCharset() {
|
||||
DirectFieldAccessor adapterAccessor = new DirectFieldAccessor(adapterWithCharset);
|
||||
FileWritingMessageHandler handler = (FileWritingMessageHandler)
|
||||
adapterAccessor.getPropertyValue("handler");
|
||||
DirectFieldAccessor handlerAccessor = new DirectFieldAccessor(handler);
|
||||
assertEquals(Charset.forName("UTF-8"), handlerAccessor.getPropertyValue("charset"));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user