Mercurial > hg > Members > shoshi > TreeCMSv1
comparison src/treecms/proto/simple/SimpleEditor.java @ 48:ecba122dd3de
added CassEditor,CassLink,CassNode
implementation finished.
but debugging has not done yet.
author | shoshi |
---|---|
date | Sun, 30 Jan 2011 02:53:39 +0900 |
parents | ea7f0a4eacaf |
children |
comparison
equal
deleted
inserted
replaced
47:5b36891db5ca | 48:ecba122dd3de |
---|---|
1 package treecms.proto.simple; | 1 package treecms.proto.simple; |
2 | 2 |
3 import java.util.List; | 3 import java.util.List; |
4 | |
4 import java.util.LinkedList; | 5 import java.util.LinkedList; |
6 | |
7 import treecms.proto.api.Browser; | |
5 import treecms.proto.api.Editor; | 8 import treecms.proto.api.Editor; |
6 import treecms.proto.api.Node; | 9 import treecms.proto.api.Node; |
7 import treecms.proto.api.NodeID; | 10 import treecms.proto.api.NodeID; |
8 import treecms.proto.marge.Marger; | 11 import treecms.proto.marge.Marger; |
9 import treecms.proto.marge.ReplaceMarger; | 12 import treecms.proto.marge.ReplaceMarger; |
10 | 13 |
11 public class SimpleEditor implements Editor | 14 public class SimpleEditor implements Editor |
12 { | 15 { |
13 private SimpleNode m_local; | 16 private Node m_local; |
14 private SimpleNode m_remote; | 17 private Node m_remote; |
15 | 18 |
16 private static final SimpleBrowser m_browser = SimpleBrowser.getSingleton(); | 19 private static final Browser m_browser = SimpleBrowser.getSingleton(); |
17 | 20 |
18 public SimpleEditor() | 21 public SimpleEditor() |
19 { | 22 { |
20 update(); | 23 update(); |
21 } | 24 } |
55 } | 58 } |
56 | 59 |
57 public void merge() | 60 public void merge() |
58 { | 61 { |
59 Marger marger = new ReplaceMarger(); | 62 Marger marger = new ReplaceMarger(); |
60 m_local = (SimpleNode)marger.merge(m_remote,m_local); | 63 m_local = marger.merge(m_remote,m_local); |
61 } | 64 } |
62 | 65 |
63 public void discard() | 66 public void discard() |
64 { | 67 { |
65 copyNode(m_remote,m_local); | 68 copyNode(m_remote,m_local); |
88 if(path.isEmpty()){ | 91 if(path.isEmpty()){ |
89 return null; | 92 return null; |
90 } | 93 } |
91 | 94 |
92 LinkedList<Node> change = new LinkedList<Node>(); | 95 LinkedList<Node> change = new LinkedList<Node>(); |
93 SimpleNode root = (SimpleNode)path.poll().cloneNode(); | 96 Node root = path.poll().cloneNode(); |
94 change.add(root); | 97 change.add(root); |
95 cloneTree(path,root,change); | 98 cloneTree(path,root,change); |
96 | 99 |
97 m_local = root; | 100 m_local = root; |
98 | 101 |
154 } | 157 } |
155 | 158 |
156 @Override | 159 @Override |
157 public boolean update() | 160 public boolean update() |
158 { | 161 { |
159 m_remote = (SimpleNode)m_browser.useContents(); | 162 m_remote = m_browser.useContents(); |
160 m_local = m_browser.createNode(); | 163 m_local = m_remote.createNode(); |
161 | 164 |
162 copyNode(m_remote,m_local); | 165 copyNode(m_remote,m_local); |
163 return true; | 166 return true; |
164 } | 167 } |
165 } | 168 } |