view src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/logger/DefaultOperationLog.java @ 50:0a3bff2d9c89

modified operation things
author Shoshi TAMAKI
date Fri, 08 Feb 2013 01:51:04 +0900
parents src/main/java/jp/ac/u_ryukyu/ie/cr/shoshi/jungle/store/impl/logger/DefaultLogger.java@1c91c4357228
children bc119c52d5cc
line wrap: on
line source

package jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.impl.logger;

import java.util.Iterator;
import fj.data.List;
import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.operations.Operation;

public class DefaultOperationLog implements OperationLog
{
	private final List<Operation> log;
	
	private static final List<Operation> EMPTY = List.nil();
	
	public DefaultOperationLog()
	{
		this(EMPTY);
	}
	
	private DefaultOperationLog(List<Operation> _log)
	{
		log = _log;
	}

	@Override
	public Iterator<Operation> iterator()
	{
		return log.iterator();
	}

	@Override
	public DefaultOperationLog add(Operation _op)
	{
		return new DefaultOperationLog(log.snoc(_op));
	}
}