// Path: src/main/java/org/mybatis/generator/api/dom/xml/Attribute.java
// public class Attribute {
// 	private String name;
// 	private String value;
// 
// 	/**
//      * 
//      */
// 	public Attribute(String name, String value) {
// 		super();
// 		this.name = name;
// 		this.value = value;
// 	}
// 
// 	/**
// 	 * @return Returns the name.
// 	 */
// 	public String getName() {
// 		return name;
// 	}
// 
// 	/**
// 	 * @return Returns the value.
// 	 */
// 	public String getValue() {
// 		return value;
// 	}
// 	
// 
// 	/**
// 	 * @param name */
// 	public void setName(String name) {
// 		this.name = name;
// 	}
// 
// 	/**
// 	 * @param value */
// 	public void setValue(String value) {
// 		this.value = value;
// 	}
// 
// 	public String getFormattedContent() {
// 		StringBuilder sb = new StringBuilder();
// 		sb.append(name);
// 		sb.append("=\""); //$NON-NLS-1$
// 		sb.append(value);
// 		sb.append('\"');
// 
// 		return sb.toString();
// 	}
// }


import java.util.Iterator;
import org.mybatis.generator.api.IntrospectedColumn;
import org.mybatis.generator.api.dom.OutputUtilities;
import org.mybatis.generator.api.dom.xml.Attribute;
import org.mybatis.generator.api.dom.xml.TextElement;
import org.mybatis.generator.api.dom.xml.XmlElement;
import org.mybatis.generator.codegen.mybatis3.MyBatis3FormattingUtilities;

			if (iter.hasNext()) {
				sb.append(',');
			}

			answer.addElement(new TextElement(sb.toString()));

			// set up for the next column
			if (iter.hasNext()) {
				sb.setLength(0);
				OutputUtilities.xmlIndent(sb, 1);
			}
		}

		boolean and = false;
		for (IntrospectedColumn introspectedColumn : introspectedTable.getPrimaryKeyColumns()) {
			sb.setLength(0);
			if (and) {
				sb.append("  and "); //$NON-NLS-1$
			} else {
				sb.append("where "); //$NON-NLS-1$
				and = true;
			}

			sb.append(MyBatis3FormattingUtilities.getEscapedColumnName(introspectedColumn));
			sb.append(" = "); //$NON-NLS-1$
			sb.append(MyBatis3FormattingUtilities.getParameterClause(introspectedColumn));
			answer.addElement(new TextElement(sb.toString()));
		}

// Path: src/main/java/org/mybatis/generator/api/dom/xml/Attribute.java
// public class Attribute {
// 	private String name;
// 	private String value;
// 
// 	/**
//      * 
//      */
// 	public Attribute(String name, String value) {
// 		super();
// 		this.name = name;
// 		this.value = value;
// 	}
// 
// 	/**
// 	 * @return Returns the name.
// 	 */
// 	public String getName() {
// 		return name;
// 	}
// 
// 	/**
// 	 * @return Returns the value.
// 	 */
// 	public String getValue() {
// 		return value;
// 	}
// 	
// 
// 	/**
// 	 * @param name */
// 	public void setName(String name) {
// 		this.name = name;
// 	}
// 
// 	/**
// 	 * @param value */
// 	public void setValue(String value) {
// 		this.value = value;
// 	}
// 
// 	public String getFormattedContent() {
// 		StringBuilder sb = new StringBuilder();
// 		sb.append(name);
// 		sb.append("=\""); //$NON-NLS-1$
// 		sb.append(value);
// 		sb.append('\"');
// 
// 		return sb.toString();
// 	}
// }


// Path: src/main/java/org/mybatis/generator/codegen/mybatis3/xmlmapper/elements/UpdateByPrimaryKeyWithoutBLOBsElementGenerator.java
import java.util.Iterator;
import org.mybatis.generator.api.IntrospectedColumn;
import org.mybatis.generator.api.dom.OutputUtilities;
import org.mybatis.generator.api.dom.xml.Attribute;
import org.mybatis.generator.api.dom.xml.TextElement;
import org.mybatis.generator.api.dom.xml.XmlElement;
import org.mybatis.generator.codegen.mybatis3.MyBatis3FormattingUtilities;


			if (iter.hasNext()) {
				sb.append(',');
			}

			answer.addElement(new TextElement(sb.toString()));

			// set up for the next column
			if (iter.hasNext()) {
				sb.setLength(0);
				OutputUtilities.xmlIndent(sb, 1);
			}
		}

		boolean and = false;
		for (IntrospectedColumn introspectedColumn : introspectedTable.getPrimaryKeyColumns()) {
			sb.setLength(0);
			if (and) {
				sb.append("  and "); //$NON-NLS-1$
			} else {
				sb.append("where "); //$NON-NLS-1$
				and = true;
			}

			sb.append(MyBatis3FormattingUtilities.getEscapedColumnName(introspectedColumn));
			sb.append(" = "); //$NON-NLS-1$
			sb.append(MyBatis3FormattingUtilities.getParameterClause(introspectedColumn));
			answer.addElement(new TextElement(sb.toString()));
		}

		if (context.getPlugins().sqlMapUpdateByPrimaryKeyWithoutBLOBsElementGenerated(answer, introspectedTable)) {