diff src/alice/jungle/operations/NetworkTreeOperationLog.java @ 79:5b9708d9febc

Modified NetworkTreeOperationLog NetworkNodeOperation
author one
date Wed, 16 Oct 2013 19:25:02 +0900
parents 190f6a3bdab2
children 3f8ec40d536a
line wrap: on
line diff
--- a/src/alice/jungle/operations/NetworkTreeOperationLog.java	Wed Oct 16 17:24:15 2013 +0900
+++ b/src/alice/jungle/operations/NetworkTreeOperationLog.java	Wed Oct 16 19:25:02 2013 +0900
@@ -13,7 +13,7 @@
 @Message
 public class NetworkTreeOperationLog implements TreeOperationLog
 {
-	public Iterable<TreeOperation> list;
+	public LinkedList<TreeOperation> list;
 	public int size;
 	
 	public NetworkTreeOperationLog() {
@@ -23,7 +23,11 @@
 	
 	public NetworkTreeOperationLog(Iterable<TreeOperation> _list, int _size)
 	{
-		list = _list;
+		list = new LinkedList<TreeOperation>();
+		for(TreeOperation op: _list) {
+			NetworkTreeOperation nOp = new NetworkTreeOperation(op);
+			list.add(nOp);
+		}
 		size = _size;
 	}
 	
@@ -39,28 +43,19 @@
 	@Override
 	public NetworkTreeOperationLog add(NodePath _p, NodeOperation _op) 
 	{
-		TreeOperation op = new NetworkTreeOperation(_p, _op);
-		LinkedList<TreeOperation> newList = new LinkedList<TreeOperation>();
-		for (Iterator<TreeOperation> iter = list.iterator(); iter.hasNext();) {
-			TreeOperation o = iter.next();
-			newList.add(o);
-		}
-		newList.add(op);
-		return new NetworkTreeOperationLog(newList, size+1);
+		NetworkTreeOperation op = new NetworkTreeOperation(_p, _op);
+		list.add(op);
+		return new NetworkTreeOperationLog(list, size+1);
 	}
 
 	@Override
 	public NetworkTreeOperationLog append(TreeOperationLog _log) 
 	{
-		LinkedList<TreeOperation> newList = new LinkedList<TreeOperation>();
-		for (Iterator<TreeOperation> iter = list.iterator(); iter.hasNext();) {
-			TreeOperation o = iter.next();
-			newList.add(o);
+		for (TreeOperation o : _log) {
+			NetworkTreeOperation op = new NetworkTreeOperation(o);
+			list.add(op);
 		}
-		for (TreeOperation o : _log) {
-			newList.add(o);
-		}
-		return new NetworkTreeOperationLog(newList, size+_log.length());
+		return new NetworkTreeOperationLog(list, size+_log.length());
 	}
 
 	@Override