nifi-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From joew...@apache.org
Subject incubator-nifi git commit: NIFI-271
Date Sat, 25 Apr 2015 12:27:34 GMT
Repository: incubator-nifi
Updated Branches:
  refs/heads/develop 953d9e59a -> c14b2cebf


NIFI-271


Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/c14b2ceb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/c14b2ceb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/c14b2ceb

Branch: refs/heads/develop
Commit: c14b2cebf8e28d898c39acd661e5923f81c1e5e9
Parents: 953d9e5
Author: joewitt <joewitt@apache.org>
Authored: Sat Apr 25 08:27:24 2015 -0400
Committer: joewitt <joewitt@apache.org>
Committed: Sat Apr 25 08:27:24 2015 -0400

----------------------------------------------------------------------
 .../nifi-yandex-processors/pom.xml              |   4 +-
 .../nifi/processors/yandex/YandexTranslate.java | 381 +++++++++----------
 .../processors/yandex/model/Translation.java    |  55 +--
 .../nifi/processors/yandex/util/Languages.java  | 124 +++---
 .../processors/yandex/TestYandexTranslate.java  | 317 ++++++++-------
 .../nifi-language-translation-bundle/pom.xml    |  28 +-
 6 files changed, 453 insertions(+), 456 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/c14b2ceb/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/pom.xml
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/pom.xml b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/pom.xml
index a5f9f0e..03776ca 100644
--- a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/pom.xml
+++ b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/pom.xml
@@ -36,8 +36,8 @@
         </dependency>
         
         <dependency>
-        	<groupId>com.sun.jersey</groupId>
-        	<artifactId>jersey-client</artifactId>
+            <groupId>com.sun.jersey</groupId>
+            <artifactId>jersey-client</artifactId>
         </dependency>
         <dependency>
             <groupId>com.sun.jersey</groupId>

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/c14b2ceb/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/YandexTranslate.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/YandexTranslate.java b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/YandexTranslate.java
index bd83a8a..8398152 100644
--- a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/YandexTranslate.java
+++ b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/YandexTranslate.java
@@ -73,76 +73,76 @@ import com.sun.jersey.core.util.MultivaluedMapImpl;
 @Tags({"yandex", "translate", "translation", "language"})
 @CapabilityDescription("Translates content and attributes from one language to another")
 @WritesAttributes({
-	@WritesAttribute(attribute="yandex.translate.failure.reason", description="If the text cannot be translated, this attribute will be set indicating the reason for the failure"),
-	@WritesAttribute(attribute="language", description="When the translation succeeds, if the content was translated, this attribute will be set indicating the new language of the content")
+    @WritesAttribute(attribute = "yandex.translate.failure.reason", description = "If the text cannot be translated, this attribute will be set indicating the reason for the failure"),
+    @WritesAttribute(attribute = "language", description = "When the translation succeeds, if the content was translated, this attribute will be set indicating the new language of the content")
 })
-@DynamicProperty(name="The name of an attribute to set that will contain the translated text of the value", 
-	value="The value to translate", 
-	supportsExpressionLanguage=true, 
-	description="User-defined properties are used to translate arbitrary text based on attributes.")
+@DynamicProperty(name = "The name of an attribute to set that will contain the translated text of the value",
+        value = "The value to translate",
+        supportsExpressionLanguage = true,
+        description = "User-defined properties are used to translate arbitrary text based on attributes.")
 public class YandexTranslate extends AbstractProcessor {
-	
+
     public static final PropertyDescriptor KEY = new PropertyDescriptor.Builder()
-    	.name("Yandex API Key")
-        .description("The API Key that is registered with Yandex")
-        .addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
-        .required(true)
-        .build();
+            .name("Yandex API Key")
+            .description("The API Key that is registered with Yandex")
+            .addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
+            .required(true)
+            .build();
     public static final PropertyDescriptor SOURCE_LANGUAGE = new PropertyDescriptor.Builder()
-		.name("Input Language")
-		.description("The language of incoming data")
-		.required(true)
-		.defaultValue("es")
-		.expressionLanguageSupported(true)
-		.addValidator(new LanguageNameValidator())
-		.build();
+            .name("Input Language")
+            .description("The language of incoming data")
+            .required(true)
+            .defaultValue("es")
+            .expressionLanguageSupported(true)
+            .addValidator(new LanguageNameValidator())
+            .build();
     public static final PropertyDescriptor TARGET_LANGUAGE = new PropertyDescriptor.Builder()
-		.name("Target Language")
-		.description("The language to translate the text into")
-		.required(true)
-		.defaultValue("en")
-		.expressionLanguageSupported(true)
-		.addValidator(new LanguageNameValidator())
-		.build();
+            .name("Target Language")
+            .description("The language to translate the text into")
+            .required(true)
+            .defaultValue("en")
+            .expressionLanguageSupported(true)
+            .addValidator(new LanguageNameValidator())
+            .build();
     public static final PropertyDescriptor TRANSLATE_CONTENT = new PropertyDescriptor.Builder()
-	    .name("Translate Content")
-	    .description("Specifies whether or not the content should be translated. If false, only the text specified by user-defined properties will be translated.")
-	    .required(true)
-	    .allowableValues("true", "false")
-	    .defaultValue("false")
-	    .build();
+            .name("Translate Content")
+            .description("Specifies whether or not the content should be translated. If false, only the text specified by user-defined properties will be translated.")
+            .required(true)
+            .allowableValues("true", "false")
+            .defaultValue("false")
+            .build();
     public static final PropertyDescriptor CHARACTER_SET = new PropertyDescriptor.Builder()
-		.name("Character Set")
-		.description("Specifies the character set of the data to be translated")
-		.required(true)
-		.defaultValue("UTF-8")
-		.expressionLanguageSupported(true)
-		.addValidator(StandardValidators.CHARACTER_SET_VALIDATOR)
-		.build();
+            .name("Character Set")
+            .description("Specifies the character set of the data to be translated")
+            .required(true)
+            .defaultValue("UTF-8")
+            .expressionLanguageSupported(true)
+            .addValidator(StandardValidators.CHARACTER_SET_VALIDATOR)
+            .build();
 
     public static final Relationship REL_SUCCESS = new Relationship.Builder()
-	    .name("success")
-	    .description("This relationship is used when the translation is successful")
-	    .build();
+            .name("success")
+            .description("This relationship is used when the translation is successful")
+            .build();
     public static final Relationship REL_COMMS_FAILURE = new Relationship.Builder()
-    	.name("comms.failure")
-    	.description("This relationship is used when the translation fails due to a problem such as a network failure, and for which the translation should be attempted again")
-    	.build();
+            .name("comms.failure")
+            .description("This relationship is used when the translation fails due to a problem such as a network failure, and for which the translation should be attempted again")
+            .build();
     public static final Relationship REL_TRANSLATION_FAILED = new Relationship.Builder()
-    	.name("translation.failure")
-    	.description("This relationship is used if the translation cannot be performed for some reason other than communications failure")
-    	.build();
+            .name("translation.failure")
+            .description("This relationship is used if the translation cannot be performed for some reason other than communications failure")
+            .build();
 
     private List<PropertyDescriptor> descriptors;
     private Set<Relationship> relationships;
-    
+
     private volatile Client client;
 
     private static final String URL = "https://translate.yandex.net/api/v1.5/tr.json/translate";
-    
+
     @Override
     protected void init(final ProcessorInitializationContext context) {
-        final List<PropertyDescriptor> descriptors = new ArrayList<PropertyDescriptor>();
+        final List<PropertyDescriptor> descriptors = new ArrayList<>();
         descriptors.add(KEY);
         descriptors.add(SOURCE_LANGUAGE);
         descriptors.add(TARGET_LANGUAGE);
@@ -150,7 +150,7 @@ public class YandexTranslate extends AbstractProcessor {
         descriptors.add(CHARACTER_SET);
         this.descriptors = Collections.unmodifiableList(descriptors);
 
-        final Set<Relationship> relationships = new HashSet<Relationship>();
+        final Set<Relationship> relationships = new HashSet<>();
         relationships.add(REL_SUCCESS);
         relationships.add(REL_COMMS_FAILURE);
         relationships.add(REL_TRANSLATION_FAILED);
@@ -166,168 +166,167 @@ public class YandexTranslate extends AbstractProcessor {
     public final List<PropertyDescriptor> getSupportedPropertyDescriptors() {
         return descriptors;
     }
-    
+
     @Override
     protected PropertyDescriptor getSupportedDynamicPropertyDescriptor(final String propertyDescriptorName) {
-    	return new PropertyDescriptor.Builder()
-    		.name(propertyDescriptorName)
-    		.addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
-    		.expressionLanguageSupported(true)
-    		.dynamic(true)
-    		.build();
+        return new PropertyDescriptor.Builder()
+                .name(propertyDescriptorName)
+                .addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
+                .expressionLanguageSupported(true)
+                .dynamic(true)
+                .build();
     }
 
     @Override
     protected Collection<ValidationResult> customValidate(final ValidationContext validationContext) {
-    	final List<ValidationResult> results = new ArrayList<>();
-    	if ( validationContext.getProperty(TRANSLATE_CONTENT).asBoolean().equals(Boolean.FALSE) ) {
-    		boolean foundDynamic = false;
-    		for ( final PropertyDescriptor descriptor : validationContext.getProperties().keySet() ) {
-    			if ( descriptor.isDynamic() ) {
-    				foundDynamic = true;
-    				break;
-    			}
-    		}
-    		
-    		if ( !foundDynamic ) {
-    			results.add(new ValidationResult.Builder().subject("Text to translate").input("<none>").valid(false).explanation("Must either set 'Translate Content' to true or add at least one user-defined property").build());
-    		}
-    	}
-    	
-    	return results;
+        final List<ValidationResult> results = new ArrayList<>();
+        if (validationContext.getProperty(TRANSLATE_CONTENT).asBoolean().equals(Boolean.FALSE)) {
+            boolean foundDynamic = false;
+            for (final PropertyDescriptor descriptor : validationContext.getProperties().keySet()) {
+                if (descriptor.isDynamic()) {
+                    foundDynamic = true;
+                    break;
+                }
+            }
+
+            if (!foundDynamic) {
+                results.add(new ValidationResult.Builder().subject("Text to translate").input("<none>").valid(false)
+                        .explanation("Must either set 'Translate Content' to true or add at least one user-defined property").build());
+            }
+        }
+
+        return results;
     }
-    
+
     @OnScheduled
     public void onScheduled(final ProcessContext context) {
-    	final ClientConfig config = new DefaultClientConfig();
+        final ClientConfig config = new DefaultClientConfig();
         config.getFeatures().put(JSONConfiguration.FEATURE_POJO_MAPPING, Boolean.TRUE);
         config.getClasses().add(ObjectMapperResolver.class);
 
-    	client = Client.create(config);
+        client = Client.create(config);
     }
 
     @OnStopped
     public void destroyClient() {
-    	if ( client != null ) {
-    		client.destroy();
-    	}
+        if (client != null) {
+            client.destroy();
+        }
     }
-    
-    
+
     protected WebResource.Builder prepareResource(final String key, final List<String> text, final String sourceLanguage, final String destLanguage) {
-		WebResource webResource = client.resource(URL);
-		
-		final MultivaluedMap<String, String> paramMap = new MultivaluedMapImpl();
-		paramMap.put("text", text);
-		paramMap.add("key", key);
-		paramMap.add("lang", sourceLanguage + "-" + destLanguage);
-		
-		WebResource.Builder builder = webResource
-				.accept(MediaType.APPLICATION_JSON)
-				.type(MediaType.APPLICATION_FORM_URLENCODED);
-		builder = builder.entity(paramMap);
-		
-		return builder;
+        WebResource webResource = client.resource(URL);
+
+        final MultivaluedMap<String, String> paramMap = new MultivaluedMapImpl();
+        paramMap.put("text", text);
+        paramMap.add("key", key);
+        paramMap.add("lang", sourceLanguage + "-" + destLanguage);
+
+        WebResource.Builder builder = webResource
+                .accept(MediaType.APPLICATION_JSON)
+                .type(MediaType.APPLICATION_FORM_URLENCODED);
+        builder = builder.entity(paramMap);
+
+        return builder;
     }
-    
-    
+
     @Override
     public void onTrigger(final ProcessContext context, final ProcessSession session) throws ProcessException {
-		FlowFile flowFile = session.get();
-		if ( flowFile == null ) {
-			return;
-		}
-
-		final StopWatch stopWatch = new StopWatch(true);
-		final String key = context.getProperty(KEY).getValue();
-		final String sourceLanguage = context.getProperty(SOURCE_LANGUAGE).evaluateAttributeExpressions(flowFile).getValue();
-		final String targetLanguage = context.getProperty(TARGET_LANGUAGE).evaluateAttributeExpressions(flowFile).getValue();
-		final String encoding = context.getProperty(CHARACTER_SET).evaluateAttributeExpressions(flowFile).getValue();
-		
-		final List<String> attributeNames = new ArrayList<>();
-		final List<String> textValues = new ArrayList<>();
-		for ( final PropertyDescriptor descriptor : context.getProperties().keySet() ) {
-			if ( descriptor.isDynamic() ) {
-				attributeNames.add(descriptor.getName());	// add to list so that we know the order when the translations come back.
-				textValues.add(context.getProperty(descriptor).evaluateAttributeExpressions(flowFile).getValue());
-			}
-		}
-		
-		if ( context.getProperty(TRANSLATE_CONTENT).asBoolean() ) {
-			final byte[] buff = new byte[(int) flowFile.getSize()];
-			session.read(flowFile, new InputStreamCallback() {
-				@Override
-				public void process(final InputStream in) throws IOException {
-					StreamUtils.fillBuffer(in, buff);
-				}
-			});
-			final String content = new String(buff, Charset.forName(encoding));
-			textValues.add(content);
-		}
-		
-		final WebResource.Builder builder = prepareResource(key, textValues, sourceLanguage, targetLanguage);
-		
-		final ClientResponse response;
-		try {
-			response = builder.post(ClientResponse.class);
-		} catch (final Exception e) {
-			getLogger().error("Failed to make request to Yandex to transate text for {} due to {}; routing to comms.failure", new Object[] {flowFile, e});
-			session.transfer(flowFile, REL_COMMS_FAILURE);
-			return;
-		}
-		
-		if ( response.getStatus() != Status.OK.getStatusCode() ) {
-			getLogger().error("Failed to translate text using Yandex for {}; response was {}: {}; routing to {}", new Object[] {
-					flowFile, response.getStatus(), response.getStatusInfo().getReasonPhrase(), REL_TRANSLATION_FAILED.getName()});
-			flowFile = session.putAttribute(flowFile, "yandex.translate.failure.reason", response.getStatusInfo().getReasonPhrase());
-			session.transfer(flowFile, REL_TRANSLATION_FAILED);
-			return;
-		}
-		
-		final Map<String, String> newAttributes = new HashMap<>();
-		final Translation translation = response.getEntity(Translation.class);
-		final List<String> texts = translation.getText();
-		for (int i=0; i < texts.size(); i++) {
-			final String text = texts.get(i);
-			if ( i < attributeNames.size() ) {
-				final String attributeName = attributeNames.get(i);
-				newAttributes.put(attributeName, text);
-			} else {
-				flowFile = session.write(flowFile, new OutputStreamCallback() {
-					@Override
-					public void process(final OutputStream out) throws IOException {
-						out.write(text.getBytes(encoding));
-					}
-				});
-				
-				newAttributes.put("language", targetLanguage);
-			}
-		}
-		
-		if ( !newAttributes.isEmpty() ) {
-			flowFile = session.putAllAttributes(flowFile, newAttributes);
-		}
-		
-		stopWatch.stop();
-		session.transfer(flowFile, REL_SUCCESS);
-		getLogger().info("Successfully translated {} items for {} from {} to {} in {}; routing to success", new Object[] {texts.size(), flowFile, sourceLanguage, targetLanguage, stopWatch.getDuration()});
+        FlowFile flowFile = session.get();
+        if (flowFile == null) {
+            return;
+        }
+
+        final StopWatch stopWatch = new StopWatch(true);
+        final String key = context.getProperty(KEY).getValue();
+        final String sourceLanguage = context.getProperty(SOURCE_LANGUAGE).evaluateAttributeExpressions(flowFile).getValue();
+        final String targetLanguage = context.getProperty(TARGET_LANGUAGE).evaluateAttributeExpressions(flowFile).getValue();
+        final String encoding = context.getProperty(CHARACTER_SET).evaluateAttributeExpressions(flowFile).getValue();
+
+        final List<String> attributeNames = new ArrayList<>();
+        final List<String> textValues = new ArrayList<>();
+        for (final PropertyDescriptor descriptor : context.getProperties().keySet()) {
+            if (descriptor.isDynamic()) {
+                attributeNames.add(descriptor.getName()); // add to list so that we know the order when the translations come back.
+                textValues.add(context.getProperty(descriptor).evaluateAttributeExpressions(flowFile).getValue());
+            }
+        }
+
+        if (context.getProperty(TRANSLATE_CONTENT).asBoolean()) {
+            final byte[] buff = new byte[(int) flowFile.getSize()];
+            session.read(flowFile, new InputStreamCallback() {
+                @Override
+                public void process(final InputStream in) throws IOException {
+                    StreamUtils.fillBuffer(in, buff);
+                }
+            });
+            final String content = new String(buff, Charset.forName(encoding));
+            textValues.add(content);
+        }
+
+        final WebResource.Builder builder = prepareResource(key, textValues, sourceLanguage, targetLanguage);
+
+        final ClientResponse response;
+        try {
+            response = builder.post(ClientResponse.class);
+        } catch (final Exception e) {
+            getLogger().error("Failed to make request to Yandex to transate text for {} due to {}; routing to comms.failure", new Object[]{flowFile, e});
+            session.transfer(flowFile, REL_COMMS_FAILURE);
+            return;
+        }
+
+        if (response.getStatus() != Status.OK.getStatusCode()) {
+            getLogger().error("Failed to translate text using Yandex for {}; response was {}: {}; routing to {}", new Object[]{
+                flowFile, response.getStatus(), response.getStatusInfo().getReasonPhrase(), REL_TRANSLATION_FAILED.getName()});
+            flowFile = session.putAttribute(flowFile, "yandex.translate.failure.reason", response.getStatusInfo().getReasonPhrase());
+            session.transfer(flowFile, REL_TRANSLATION_FAILED);
+            return;
+        }
+
+        final Map<String, String> newAttributes = new HashMap<>();
+        final Translation translation = response.getEntity(Translation.class);
+        final List<String> texts = translation.getText();
+        for (int i = 0; i < texts.size(); i++) {
+            final String text = texts.get(i);
+            if (i < attributeNames.size()) {
+                final String attributeName = attributeNames.get(i);
+                newAttributes.put(attributeName, text);
+            } else {
+                flowFile = session.write(flowFile, new OutputStreamCallback() {
+                    @Override
+                    public void process(final OutputStream out) throws IOException {
+                        out.write(text.getBytes(encoding));
+                    }
+                });
+
+                newAttributes.put("language", targetLanguage);
+            }
+        }
+
+        if (!newAttributes.isEmpty()) {
+            flowFile = session.putAllAttributes(flowFile, newAttributes);
+        }
+
+        stopWatch.stop();
+        session.transfer(flowFile, REL_SUCCESS);
+        getLogger().info("Successfully translated {} items for {} from {} to {} in {}; routing to success",
+                new Object[]{texts.size(), flowFile, sourceLanguage, targetLanguage, stopWatch.getDuration()});
     }
 
-    
     private static class LanguageNameValidator implements Validator {
-    	
-		@Override
-		public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
-			if ( context.isExpressionLanguagePresent(input) ) {
-				return new ValidationResult.Builder().subject(subject).input(input).valid(true).explanation("Expression Language Present").build();
-			}
-
-			if ( Languages.getLanguageMap().keySet().contains(input.toLowerCase()) ) {
-				return new ValidationResult.Builder().subject(subject).input(input).valid(true).build();
-			}
-			
-			return new ValidationResult.Builder().subject(subject).input(input).valid(false).explanation(input + " is not a language that is supported by Yandex").build();
-		}
-    	
+
+        @Override
+        public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
+            if (context.isExpressionLanguagePresent(input)) {
+                return new ValidationResult.Builder().subject(subject).input(input).valid(true).explanation("Expression Language Present").build();
+            }
+
+            if (Languages.getLanguageMap().keySet().contains(input.toLowerCase())) {
+                return new ValidationResult.Builder().subject(subject).input(input).valid(true).build();
+            }
+
+            return new ValidationResult.Builder().subject(subject).input(input).valid(false).explanation(input + " is not a language that is supported by Yandex").build();
+        }
+
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/c14b2ceb/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/model/Translation.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/model/Translation.java b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/model/Translation.java
index eeb7c3f..0e9ce84 100644
--- a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/model/Translation.java
+++ b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/model/Translation.java
@@ -22,31 +22,32 @@ import javax.xml.bind.annotation.XmlRootElement;
 
 @XmlRootElement(name = "translation")
 public class Translation {
-	private int code;
-	private String lang;
-	private List<String> text;
-	
-	public int getCode() {
-		return code;
-	}
-	
-	public void setCode(final int code) {
-		this.code = code;
-	}
-	
-	public String getLang() {
-		return lang;
-	}
-	
-	public void setLang(final String lang) {
-		this.lang = lang;
-	}
-	
-	public List<String> getText() {
-		return text;
-	}
-	
-	public void setText(final List<String> text) {
-		this.text = text;
-	}
+
+    private int code;
+    private String lang;
+    private List<String> text;
+
+    public int getCode() {
+        return code;
+    }
+
+    public void setCode(final int code) {
+        this.code = code;
+    }
+
+    public String getLang() {
+        return lang;
+    }
+
+    public void setLang(final String lang) {
+        this.lang = lang;
+    }
+
+    public List<String> getText() {
+        return text;
+    }
+
+    public void setText(final List<String> text) {
+        this.text = text;
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/c14b2ceb/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/util/Languages.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/util/Languages.java b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/util/Languages.java
index 791d6a3..754bc16 100644
--- a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/util/Languages.java
+++ b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/main/java/org/apache/nifi/processors/yandex/util/Languages.java
@@ -21,66 +21,66 @@ import java.util.HashMap;
 import java.util.Map;
 
 public class Languages {
-	private static final Map<String, String> languageAbbreviationMap = new HashMap<>();
-	
-	static {
-		languageAbbreviationMap.put("ar", "arabic");
-		languageAbbreviationMap.put("az", "azerbaijani");
-		languageAbbreviationMap.put("be", "belarusian");
-		languageAbbreviationMap.put("bg", "bulgarian");
-		languageAbbreviationMap.put("bs", "bosnian");
-		languageAbbreviationMap.put("ca", "catalan");
-		languageAbbreviationMap.put("cs", "czech");
-		languageAbbreviationMap.put("da", "danish");
-		languageAbbreviationMap.put("de", "german");
-		languageAbbreviationMap.put("el", "greek");
-		languageAbbreviationMap.put("en", "english");
-		languageAbbreviationMap.put("es", "spanish");
-		languageAbbreviationMap.put("et", "estonian");
-		languageAbbreviationMap.put("fi", "finnish");
-		languageAbbreviationMap.put("fr", "french");
-		languageAbbreviationMap.put("he", "hebrew");
-		languageAbbreviationMap.put("hr", "croatian");
-		languageAbbreviationMap.put("hu", "hungarian");
-		languageAbbreviationMap.put("hy", "armenian");
-		languageAbbreviationMap.put("id", "indonesian");
-		languageAbbreviationMap.put("is", "icelandic");
-		languageAbbreviationMap.put("it", "italian");
-		languageAbbreviationMap.put("ja", "japanese");
-		languageAbbreviationMap.put("ka", "georgian");
-		languageAbbreviationMap.put("ko", "korean");
-		languageAbbreviationMap.put("lt", "lithuanian");
-		languageAbbreviationMap.put("lv", "latvian");
-		languageAbbreviationMap.put("mk", "macedonian");
-		languageAbbreviationMap.put("ms", "malay");
-		languageAbbreviationMap.put("mt", "maltese");
-		languageAbbreviationMap.put("nl", "dutch");
-		languageAbbreviationMap.put("no", "norwegian");
-		languageAbbreviationMap.put("pl", "polish");
-		languageAbbreviationMap.put("pt", "portuguese");
-		languageAbbreviationMap.put("ro", "romanian");
-		languageAbbreviationMap.put("ru", "russian");
-		languageAbbreviationMap.put("sk", "slovak");
-		languageAbbreviationMap.put("sl", "slovenian");
-		languageAbbreviationMap.put("sq", "albanian");
-		languageAbbreviationMap.put("sr", "serbian");
-		languageAbbreviationMap.put("sv", "swedish");
-		languageAbbreviationMap.put("th", "thai");
-		languageAbbreviationMap.put("tr", "turkish");
-		languageAbbreviationMap.put("uk", "ukrainian");
-		languageAbbreviationMap.put("vi", "vietnamese");
-		languageAbbreviationMap.put("zh", "chinese");
-		
-		final Map<String, String> reverseMap = new HashMap<>();
-		for ( final Map.Entry<String, String> entry : languageAbbreviationMap.entrySet() ) {
-			reverseMap.put(entry.getValue(), entry.getKey());
-		}
-		
-		languageAbbreviationMap.putAll(reverseMap);
-	}
-	
-	
-	public static Map<String, String> getLanguageMap() {
-		return Collections.unmodifiableMap(languageAbbreviationMap);
-	}
+
+    private static final Map<String, String> languageAbbreviationMap = new HashMap<>();
+
+    static {
+        languageAbbreviationMap.put("ar", "arabic");
+        languageAbbreviationMap.put("az", "azerbaijani");
+        languageAbbreviationMap.put("be", "belarusian");
+        languageAbbreviationMap.put("bg", "bulgarian");
+        languageAbbreviationMap.put("bs", "bosnian");
+        languageAbbreviationMap.put("ca", "catalan");
+        languageAbbreviationMap.put("cs", "czech");
+        languageAbbreviationMap.put("da", "danish");
+        languageAbbreviationMap.put("de", "german");
+        languageAbbreviationMap.put("el", "greek");
+        languageAbbreviationMap.put("en", "english");
+        languageAbbreviationMap.put("es", "spanish");
+        languageAbbreviationMap.put("et", "estonian");
+        languageAbbreviationMap.put("fi", "finnish");
+        languageAbbreviationMap.put("fr", "french");
+        languageAbbreviationMap.put("he", "hebrew");
+        languageAbbreviationMap.put("hr", "croatian");
+        languageAbbreviationMap.put("hu", "hungarian");
+        languageAbbreviationMap.put("hy", "armenian");
+        languageAbbreviationMap.put("id", "indonesian");
+        languageAbbreviationMap.put("is", "icelandic");
+        languageAbbreviationMap.put("it", "italian");
+        languageAbbreviationMap.put("ja", "japanese");
+        languageAbbreviationMap.put("ka", "georgian");
+        languageAbbreviationMap.put("ko", "korean");
+        languageAbbreviationMap.put("lt", "lithuanian");
+        languageAbbreviationMap.put("lv", "latvian");
+        languageAbbreviationMap.put("mk", "macedonian");
+        languageAbbreviationMap.put("ms", "malay");
+        languageAbbreviationMap.put("mt", "maltese");
+        languageAbbreviationMap.put("nl", "dutch");
+        languageAbbreviationMap.put("no", "norwegian");
+        languageAbbreviationMap.put("pl", "polish");
+        languageAbbreviationMap.put("pt", "portuguese");
+        languageAbbreviationMap.put("ro", "romanian");
+        languageAbbreviationMap.put("ru", "russian");
+        languageAbbreviationMap.put("sk", "slovak");
+        languageAbbreviationMap.put("sl", "slovenian");
+        languageAbbreviationMap.put("sq", "albanian");
+        languageAbbreviationMap.put("sr", "serbian");
+        languageAbbreviationMap.put("sv", "swedish");
+        languageAbbreviationMap.put("th", "thai");
+        languageAbbreviationMap.put("tr", "turkish");
+        languageAbbreviationMap.put("uk", "ukrainian");
+        languageAbbreviationMap.put("vi", "vietnamese");
+        languageAbbreviationMap.put("zh", "chinese");
+
+        final Map<String, String> reverseMap = new HashMap<>();
+        for (final Map.Entry<String, String> entry : languageAbbreviationMap.entrySet()) {
+            reverseMap.put(entry.getValue(), entry.getKey());
+        }
+
+        languageAbbreviationMap.putAll(reverseMap);
+    }
+
+    public static Map<String, String> getLanguageMap() {
+        return Collections.unmodifiableMap(languageAbbreviationMap);
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/c14b2ceb/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/test/java/org/apache/nifi/processors/yandex/TestYandexTranslate.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/test/java/org/apache/nifi/processors/yandex/TestYandexTranslate.java b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/test/java/org/apache/nifi/processors/yandex/TestYandexTranslate.java
index 7b38b8b..8c1aaff 100644
--- a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/test/java/org/apache/nifi/processors/yandex/TestYandexTranslate.java
+++ b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/nifi-yandex-processors/src/test/java/org/apache/nifi/processors/yandex/TestYandexTranslate.java
@@ -42,185 +42,182 @@ import com.sun.jersey.api.client.WebResource.Builder;
 
 public class TestYandexTranslate {
 
-	private static final Map<String, String> translations = new HashMap<>();
-	
-	@BeforeClass
-	public static void setupTranslationMap() {
-		translations.put("bonjour", "hello");
-		translations.put("traduire", "translate");
-		translations.put("amusant", "fun");
-		translations.put("ordinateur", "computer");
-	}
-	
+    private static final Map<String, String> translations = new HashMap<>();
+
+    @BeforeClass
+    public static void setupTranslationMap() {
+        translations.put("bonjour", "hello");
+        translations.put("traduire", "translate");
+        translations.put("amusant", "fun");
+        translations.put("ordinateur", "computer");
+    }
+
     private TestRunner createTestRunner(final int statusCode) {
-    	return TestRunners.newTestRunner(new YandexTranslate() {
-        	@Override
-        	protected Builder prepareResource(final String key, final List<String> text, final String sourceLanguage, final String destLanguage) {
-        		final WebResource.Builder builder = Mockito.mock(WebResource.Builder.class);
-        		
-        		Mockito.doAnswer(new Answer<ClientResponse>() {
-					@Override
-					public ClientResponse answer(final InvocationOnMock invocation) throws Throwable {
-						final ClientResponse response = Mockito.mock(ClientResponse.class);
-
-						final StatusType statusType = new StatusType() {
-							@Override
-							public int getStatusCode() {
-								return statusCode;
-							}
-							
-							@Override
-							public String getReasonPhrase() {
-								return String.valueOf(statusCode);
-							}
-							
-							@Override
-							public Family getFamily() {
-								return statusCode == 200 ? Family.SUCCESSFUL : Family.SERVER_ERROR;
-							}
-						};
-						
-						Mockito.when(response.getStatus()).thenReturn(statusCode);
-						Mockito.when(response.getStatusInfo()).thenReturn(statusType);
-						
-						if ( statusCode == 200 ) {
-							final Translation translation = new Translation();
-							translation.setCode(statusCode);
-							translation.setLang(destLanguage);
-							
-							final List<String> translationList = new ArrayList<>();
-							for ( final String original : text ) {
-								final String translated = translations.get(original);
-								translationList.add(translated == null ? original : translated);
-							}
-							
-							translation.setText(translationList);
-							
-							Mockito.when(response.getEntity(Translation.class)).thenReturn(translation);
-						}
-						
-						return response;
-					}
-        		}).when(builder).post(ClientResponse.class);
-        		return builder;
-        	}
+        return TestRunners.newTestRunner(new YandexTranslate() {
+            @Override
+            protected Builder prepareResource(final String key, final List<String> text, final String sourceLanguage, final String destLanguage) {
+                final WebResource.Builder builder = Mockito.mock(WebResource.Builder.class);
+
+                Mockito.doAnswer(new Answer<ClientResponse>() {
+                    @Override
+                    public ClientResponse answer(final InvocationOnMock invocation) throws Throwable {
+                        final ClientResponse response = Mockito.mock(ClientResponse.class);
+
+                        final StatusType statusType = new StatusType() {
+                            @Override
+                            public int getStatusCode() {
+                                return statusCode;
+                            }
+
+                            @Override
+                            public String getReasonPhrase() {
+                                return String.valueOf(statusCode);
+                            }
+
+                            @Override
+                            public Family getFamily() {
+                                return statusCode == 200 ? Family.SUCCESSFUL : Family.SERVER_ERROR;
+                            }
+                        };
+
+                        Mockito.when(response.getStatus()).thenReturn(statusCode);
+                        Mockito.when(response.getStatusInfo()).thenReturn(statusType);
+
+                        if (statusCode == 200) {
+                            final Translation translation = new Translation();
+                            translation.setCode(statusCode);
+                            translation.setLang(destLanguage);
+
+                            final List<String> translationList = new ArrayList<>();
+                            for (final String original : text) {
+                                final String translated = translations.get(original);
+                                translationList.add(translated == null ? original : translated);
+                            }
+
+                            translation.setText(translationList);
+
+                            Mockito.when(response.getEntity(Translation.class)).thenReturn(translation);
+                        }
+
+                        return response;
+                    }
+                }).when(builder).post(ClientResponse.class);
+                return builder;
+            }
         });
     }
-    
-    
+
     @Test
     public void testTranslateContent() {
-    	final TestRunner testRunner = createTestRunner(200);
-    	testRunner.setProperty(YandexTranslate.KEY, "a");
-    	testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
-    	testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
-    	testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "true");
-    	testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
-    	
-    	testRunner.enqueue("bonjour".getBytes());
-    	testRunner.run();
-    	
-    	testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
-    	final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
-    	
-    	final String outText = new String(out.toByteArray());
-    	assertEquals("hello", outText);
+        final TestRunner testRunner = createTestRunner(200);
+        testRunner.setProperty(YandexTranslate.KEY, "a");
+        testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
+        testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
+        testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "true");
+        testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
+
+        testRunner.enqueue("bonjour".getBytes());
+        testRunner.run();
+
+        testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
+        final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
+
+        final String outText = new String(out.toByteArray());
+        assertEquals("hello", outText);
     }
 
-    
     @Test
     public void testTranslateSingleAttribute() {
-    	final TestRunner testRunner = createTestRunner(200);
-
-    	testRunner.setProperty(YandexTranslate.KEY, "A");
-    	testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
-    	testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
-    	testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "false");
-    	testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
-    	testRunner.setProperty("translated", "bonjour");
-    	
-    	testRunner.enqueue(new byte[0]);
-    	testRunner.run();
-    	
-    	testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
-    	final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
-    	
-    	assertEquals(0, out.toByteArray().length);
-    	out.assertAttributeEquals("translated", "hello");
+        final TestRunner testRunner = createTestRunner(200);
+
+        testRunner.setProperty(YandexTranslate.KEY, "A");
+        testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
+        testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
+        testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "false");
+        testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
+        testRunner.setProperty("translated", "bonjour");
+
+        testRunner.enqueue(new byte[0]);
+        testRunner.run();
+
+        testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
+        final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
+
+        assertEquals(0, out.toByteArray().length);
+        out.assertAttributeEquals("translated", "hello");
     }
-    
+
     @Test
     public void testTranslateMultipleAttributes() {
-    	final TestRunner testRunner = createTestRunner(200);
-
-    	testRunner.setProperty(YandexTranslate.KEY, "A");
-    	testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
-    	testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
-    	testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "false");
-    	testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
-    	testRunner.setProperty("hello", "bonjour");
-    	testRunner.setProperty("translate", "traduire");
-    	testRunner.setProperty("fun", "amusant");
-    	
-    	testRunner.enqueue(new byte[0]);
-    	testRunner.run();
-    	
-    	testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
-    	final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
-    	
-    	assertEquals(0, out.toByteArray().length);
-    	out.assertAttributeEquals("hello", "hello");
-    	out.assertAttributeEquals("translate", "translate");
-    	out.assertAttributeEquals("fun", "fun");
+        final TestRunner testRunner = createTestRunner(200);
+
+        testRunner.setProperty(YandexTranslate.KEY, "A");
+        testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
+        testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
+        testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "false");
+        testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
+        testRunner.setProperty("hello", "bonjour");
+        testRunner.setProperty("translate", "traduire");
+        testRunner.setProperty("fun", "amusant");
+
+        testRunner.enqueue(new byte[0]);
+        testRunner.run();
+
+        testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
+        final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
+
+        assertEquals(0, out.toByteArray().length);
+        out.assertAttributeEquals("hello", "hello");
+        out.assertAttributeEquals("translate", "translate");
+        out.assertAttributeEquals("fun", "fun");
     }
 
-    
     @Test
     public void testTranslateContentAndMultipleAttributes() {
-    	final TestRunner testRunner = createTestRunner(200);
-
-    	testRunner.setProperty(YandexTranslate.KEY, "A");
-    	testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
-    	testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
-    	testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "true");
-    	testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
-    	testRunner.setProperty("hello", "bonjour");
-    	testRunner.setProperty("translate", "traduire");
-    	testRunner.setProperty("fun", "amusant");
-    	testRunner.setProperty("nifi", "nifi");
-    	
-    	testRunner.enqueue("ordinateur".getBytes());
-    	testRunner.run();
-    	
-    	testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
-    	final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
-    	
-    	out.assertContentEquals("computer");
-    	
-    	out.assertAttributeEquals("hello", "hello");
-    	out.assertAttributeEquals("translate", "translate");
-    	out.assertAttributeEquals("fun", "fun");
-    	out.assertAttributeEquals("nifi", "nifi");
+        final TestRunner testRunner = createTestRunner(200);
+
+        testRunner.setProperty(YandexTranslate.KEY, "A");
+        testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
+        testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
+        testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "true");
+        testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
+        testRunner.setProperty("hello", "bonjour");
+        testRunner.setProperty("translate", "traduire");
+        testRunner.setProperty("fun", "amusant");
+        testRunner.setProperty("nifi", "nifi");
+
+        testRunner.enqueue("ordinateur".getBytes());
+        testRunner.run();
+
+        testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_SUCCESS, 1);
+        final MockFlowFile out = testRunner.getFlowFilesForRelationship(YandexTranslate.REL_SUCCESS).get(0);
+
+        out.assertContentEquals("computer");
+
+        out.assertAttributeEquals("hello", "hello");
+        out.assertAttributeEquals("translate", "translate");
+        out.assertAttributeEquals("fun", "fun");
+        out.assertAttributeEquals("nifi", "nifi");
     }
-    
+
     @Test
     public void testFailureResponse() {
-    	final TestRunner testRunner = createTestRunner(403);
-
-    	testRunner.setProperty(YandexTranslate.KEY, "A");
-    	testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
-    	testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
-    	testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "true");
-    	testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
-    	testRunner.setProperty("hello", "bonjour");
-    	testRunner.setProperty("translate", "traduire");
-    	testRunner.setProperty("fun", "amusant");
-    	testRunner.setProperty("nifi", "nifi");
-    	
-    	testRunner.enqueue("ordinateur".getBytes());
-    	testRunner.run();
-    	
-    	testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_TRANSLATION_FAILED, 1);
+        final TestRunner testRunner = createTestRunner(403);
+
+        testRunner.setProperty(YandexTranslate.KEY, "A");
+        testRunner.setProperty(YandexTranslate.SOURCE_LANGUAGE, "fr");
+        testRunner.setProperty(YandexTranslate.TARGET_LANGUAGE, "en");
+        testRunner.setProperty(YandexTranslate.TRANSLATE_CONTENT, "true");
+        testRunner.setProperty(YandexTranslate.CHARACTER_SET, "UTF-8");
+        testRunner.setProperty("hello", "bonjour");
+        testRunner.setProperty("translate", "traduire");
+        testRunner.setProperty("fun", "amusant");
+        testRunner.setProperty("nifi", "nifi");
+
+        testRunner.enqueue("ordinateur".getBytes());
+        testRunner.run();
+
+        testRunner.assertAllFlowFilesTransferred(YandexTranslate.REL_TRANSLATION_FAILED, 1);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/c14b2ceb/nifi/nifi-nar-bundles/nifi-language-translation-bundle/pom.xml
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/pom.xml b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/pom.xml
index 43573e7..830da21 100644
--- a/nifi/nifi-nar-bundles/nifi-language-translation-bundle/pom.xml
+++ b/nifi/nifi-nar-bundles/nifi-language-translation-bundle/pom.xml
@@ -30,19 +30,19 @@
         <module>nifi-language-translation-nar</module>
     </modules>
 
-	<dependencyManagement>
-		<dependencies>
-			<dependency>
-				<groupId>com.sun.jersey</groupId>
-				<artifactId>jersey-client</artifactId>
-				<version>${jersey.version}</version>
-			</dependency>
-			<dependency>
-				<groupId>com.sun.jersey</groupId>
-				<artifactId>jersey-json</artifactId>
-				<version>${jersey.version}</version>
-			</dependency>
-		</dependencies>
-	</dependencyManagement>
+    <dependencyManagement>
+        <dependencies>
+            <dependency>
+                <groupId>com.sun.jersey</groupId>
+                <artifactId>jersey-client</artifactId>
+                <version>${jersey.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>com.sun.jersey</groupId>
+                <artifactId>jersey-json</artifactId>
+                <version>${jersey.version}</version>
+            </dependency>
+        </dependencies>
+    </dependencyManagement>
 	
 </project>


Mime
View raw message