// Path: easyxml-core/src/main/java/com/giffing/easyxml/context/ParseContext.java
// public class ParseContext {
// 	
// 	/**
// 	 * The current xml element path divided by slash
// 	 */
// 	private String path;
// 
// 	public String getPath() {
// 		return path;
// 	}
// 
// 	public void setPath(String path) {
// 		this.path = path;
// 	}
// 
// }
// 
// Path: easyxml-jdom2-example/src/main/java/com/giffing/easyxml/jdom2/example/domain/Note.java
// public class Note {
// 
// 	private Long id;
// 	
// 	private String content;
// 	
// 	private Long groupId;
// 
// 	public Long getId() {
// 		return id;
// 	}
// 
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public String getContent() {
// 		return content;
// 	}
// 
// 	public void setContent(String content) {
// 		this.content = content;
// 	}
// 
// 	public Long getGroupId() {
// 		return groupId;
// 	}
// 
// 	public void setGroupId(Long groupId) {
// 		this.groupId = groupId;
// 	}
// 	
// }
// 
// Path: easyxml-core/src/main/java/com/giffing/easyxml/reader/item/ItemReader.java
// public interface ItemReader<T, R> {
// 
// 	/**
// 	 * @param t transform result
// 	 */
// 	R read(T t);
// 
// 	/**
// 	 * Indicates if the reader is responsible for the current context
// 	 * 
// 	 * @param context
// 	 */
// 	boolean shouldHandle(ParseContext context);
// 
// }


import org.jdom2.Element;
import com.giffing.easyxml.context.ParseContext;
import com.giffing.easyxml.jdom2.example.domain.Note;
import com.giffing.easyxml.reader.item.ItemReader;
package com.giffing.easyxml.jdom2.example;



public class NoteItemReader implements ItemReader<Element, Note> {

	private NoteContext context;
	
	@Override
	public Note read(Element element) {
		Note note = new Note();
		note.setId(Long.valueOf(element.getChildTextTrim("id")));
		note.setContent(element.getChildTextTrim("content"));
		note.setGroupId(context.latestGroupId);
		return note;
	}

	@Override
// Path: easyxml-core/src/main/java/com/giffing/easyxml/context/ParseContext.java
// public class ParseContext {
// 	
// 	/**
// 	 * The current xml element path divided by slash
// 	 */
// 	private String path;
// 
// 	public String getPath() {
// 		return path;
// 	}
// 
// 	public void setPath(String path) {
// 		this.path = path;
// 	}
// 
// }
// 
// Path: easyxml-jdom2-example/src/main/java/com/giffing/easyxml/jdom2/example/domain/Note.java
// public class Note {
// 
// 	private Long id;
// 	
// 	private String content;
// 	
// 	private Long groupId;
// 
// 	public Long getId() {
// 		return id;
// 	}
// 
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public String getContent() {
// 		return content;
// 	}
// 
// 	public void setContent(String content) {
// 		this.content = content;
// 	}
// 
// 	public Long getGroupId() {
// 		return groupId;
// 	}
// 
// 	public void setGroupId(Long groupId) {
// 		this.groupId = groupId;
// 	}
// 	
// }
// 
// Path: easyxml-core/src/main/java/com/giffing/easyxml/reader/item/ItemReader.java
// public interface ItemReader<T, R> {
// 
// 	/**
// 	 * @param t transform result
// 	 */
// 	R read(T t);
// 
// 	/**
// 	 * Indicates if the reader is responsible for the current context
// 	 * 
// 	 * @param context
// 	 */
// 	boolean shouldHandle(ParseContext context);
// 
// }


// Path: easyxml-jdom2-example/src/main/java/com/giffing/easyxml/jdom2/example/NoteItemReader.java
import org.jdom2.Element;
import com.giffing.easyxml.context.ParseContext;
import com.giffing.easyxml.jdom2.example.domain.Note;
import com.giffing.easyxml.reader.item.ItemReader;

package com.giffing.easyxml.jdom2.example;



public class NoteItemReader implements ItemReader<Element, Note> {

	private NoteContext context;
	
	@Override
	public Note read(Element element) {
		Note note = new Note();
		note.setId(Long.valueOf(element.getChildTextTrim("id")));
		note.setContent(element.getChildTextTrim("content"));
		note.setGroupId(context.latestGroupId);
		return note;
	}

	@Override
	public boolean shouldHandle(ParseContext context) {