package com.nhl.link.move;

/**
 * A descriptor of a {@link Row} attribute. May contain optional path expression
 * that maps the attribute to a target attribute.
 */
public class BaseRowAttribute implements RowAttribute {

	private Class<?> type;
	private String sourceName;
	private String targetPath;
	private int ordinal;

	public BaseRowAttribute(Class<?> type, String sourceName, String targetName, int ordinal) {
		this.type = type;
		this.sourceName = sourceName;
		this.targetPath = targetName;
		this.ordinal = ordinal;
	}

	/**
	 * Returns a position of the attribute in a row.
	 */
	@Override
	public int getOrdinal() {
		return ordinal;
	}

	@Override
	public Class<?> type() {
		return type;
	}

	/**
	 * Returns a String name of the attribute as provided by the source.
	 */
	@Override
	public String getSourceName() {
		return sourceName;
	}

	/**
	 * Returns a path expression that maps source Row value to a target
	 * property.
	 */
	@Override
	public String getTargetPath() {
		return targetPath;
	}

	@Override
	public String toString() {
		StringBuilder buffer = new StringBuilder();
		buffer.append("{sourceName:").append(sourceName).append(",targetName:").append(targetPath).append(",ordinal:")
				.append(ordinal).append("}");
		return buffer.toString();
	}
}

@@ -50,19 +50,18 @@
 f a 
-%7B@link R
+source r
 ow
-%7D
  att
@@ -104,19 +104,16 @@
 pression
-%0A *
  that ma
@@ -140,16 +140,19 @@
 a target
+%0A *
  attribu
@@ -216,17 +216,20 @@
 bute %7B%0A%0A
-%09
+    
 private 
@@ -243,17 +243,20 @@
 %3E type;%0A
-%09
+    
 private 
@@ -274,17 +274,20 @@
 ceName;%0A
-%09
+    
 private 
@@ -305,17 +305,20 @@
 etPath;%0A
-%09
+    
 private 
@@ -331,17 +331,20 @@
 dinal;%0A%0A
-%09
+    
 public B
@@ -427,18 +427,24 @@
 inal) %7B%0A
-%09%09
+        
 this.typ
@@ -453,18 +453,24 @@
 = type;%0A
-%09%09
+        
 this.sou
@@ -487,26 +487,32 @@
 sourceName;%0A
-%09%09
+        
 this.targetP
@@ -529,18 +529,24 @@
 etName;%0A
-%09%09
+        
 this.ord
@@ -561,26 +561,35 @@
 rdinal;%0A
-%09%7D%0A%0A%09/**%0A%09
+    %7D%0A%0A    /**%0A    
  * Retur
@@ -629,22 +629,28 @@
  a row.%0A
-%09 */%0A%09
+     */%0A    
 @Overrid
@@ -647,25 +647,28 @@
   @Override%0A
-%09
+    
 public int g
@@ -677,26 +677,32 @@
 Ordinal() %7B%0A
-%09%09
+        
 return ordin
@@ -705,21 +705,27 @@
 rdinal;%0A
-%09%7D%0A%0A%09
+    %7D%0A%0A    
 @Overrid
@@ -722,25 +722,28 @@
   @Override%0A
-%09
+    
 public Class
@@ -751,26 +751,32 @@
 ?%3E type() %7B%0A
-%09%09
+        
 return type;
@@ -776,26 +776,35 @@
 n type;%0A
-%09%7D%0A%0A%09/**%0A%09
+    %7D%0A%0A    /**%0A    
  * Retur
@@ -864,22 +864,28 @@
 source.%0A
-%09 */%0A%09
+     */%0A    
 @Overrid
@@ -878,33 +878,36 @@
 /%0A    @Override%0A
-%09
+    
 public String ge
@@ -918,26 +918,32 @@
 rceName() %7B%0A
-%09%09
+        
 return sourc
@@ -953,18 +953,27 @@
 me;%0A
-%09%7D%0A%0A%09/**%0A%09
+    %7D%0A%0A    /**%0A    
  * R
@@ -1036,17 +1036,20 @@
  target%0A
-%09
+    
  * prope
@@ -1057,14 +1057,20 @@
 ty.%0A
-%09 */%0A%09
+     */%0A    
 @Ove
@@ -1067,33 +1067,36 @@
 /%0A    @Override%0A
-%09
+    
 public String ge
@@ -1111,18 +1111,24 @@
 ath() %7B%0A
-%09%09
+        
 return t
@@ -1142,13 +1142,19 @@
 th;%0A
-%09%7D%0A%0A%09
+    %7D%0A%0A    
 @Ove
@@ -1159,17 +1159,20 @@
 verride%0A
-%09
+    
 public S
@@ -1190,18 +1190,24 @@
 ing() %7B%0A
-%09%09
+        
 StringBu
@@ -1242,18 +1242,24 @@
 lder();%0A
-%09%09
+        
 buffer.a
@@ -1365,12 +1365,24 @@
 :%22)%0A
-%09%09%09%09
+                
 .app
@@ -1411,10 +1411,16 @@
 %22);%0A
-%09%09
+        
 retu
@@ -1445,9 +1445,12 @@
 ();%0A
-%09
+    
 %7D%0A%7D%0A

Replace source Row object with just Object[] #163