⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmlsalesformatter.java

📁 icarnegie SSD3 GourmetCoffe
💻 JAVA
字号:
import java.util.*;

/**
 * Esta clase implementa un m閠odo que obtiene una representaci髇 en texto plano
 * de un objeto{@link Sales}.
 * 

 * @version 1.0.0
 */
public class XMLSalesFormatter implements SalesFormatter {

	private final static String NEW_LINE = System.getProperty("line.separator");

	static private XMLSalesFormatter singletonInstance = null;

	/**
	 * Obtiene la 鷑ica instancia de la clase <code>XMLSalesFormatter</code>
	 * 
	 * @return la 鷑ica instancia de la clase <code>XMLSalesFormatter</code>
	 */
	static public XMLSalesFormatter getSingletonInstance() {

		if (singletonInstance == null) {
			singletonInstance = new XMLSalesFormatter();
		}

		return singletonInstance;
	}

	/*
	 * El constructor se declara como privado de modo que otras clases no puedan
	 * crear una instancia de esta clase.
	 */
	private XMLSalesFormatter() {
	}

	/**
	 * Obtiene una representaci髇 en XML de la base de datos de usuarios
	 * especificada.
	 * 
	 * @param sales
	 *            la base de datos de usuarios.
	 * @return una representaci髇 en texto plano de un objeto {@link Order}
	 *         especificado.
	 */
	public String formatSales(Sales sales) {

		String out = "<Sales>" + NEW_LINE;

		for (Iterator iterator = sales.iterator(); iterator.hasNext();) {

			Order order = (Order) iterator.next();

			out += "  <Order total=\"" + order.getTotalCost() + "\">"
					+ NEW_LINE;

			for (Iterator iterator1 = order.iterator(); iterator1.hasNext();) {

				OrderItem orderitem = (OrderItem) iterator1.next();

				out += "    <OrderItem quantity=\"" + orderitem.getQuantity()
						+ "\" price=\"" + orderitem.getProduct().getPrice()
						+ "\">" + orderitem.getProduct().getCode()
						+ "</OrderItem>" + NEW_LINE;
			}

			out = out + "  </Order>" + NEW_LINE;

		}

		out += "</Sales>";

		return out;

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -