1 package com.tirsen.nanning.samples.prevayler; 2 3 import java.io.Serializable ; 4 import java.util.Collection ; 5 import java.util.ArrayList ; 6 7 import com.tirsen.nanning.Aspects; 8 import org.prevayler.util.clock.AbstractClockedSystem; 9 10 public class MySystemImpl extends AbstractClockedSystem implements MySystem, Serializable { 11 private MyObject myObject; 12 13 public MyObject createMyObject() { 14 return (MyObject) Aspects.getCurrentAspectFactory().newInstance(MyObject.class); 15 } 16 17 public void setMyObject(MyObject myObject) { 18 this.myObject = myObject; 19 } 20 21 public MyObject getMyObject() { 22 return myObject; 23 } 24 25 public Collection getAllObjects() { 26 Collection result = new ArrayList (); 27 addAllObjects(result, myObject); 28 return result; 29 } 30 31 private void addAllObjects(Collection result, MyObject myObject) { 32 if (myObject == null) { 33 return; 34 } 35 result.add(myObject); 36 addAllObjects(result, myObject.getMyObject()); 37 } 38 } 39 | Popular Tags |