Subversion Repository Public Repository

litesoft

Diff Revisions 829 vs 830 for /trunk/Java/KeyHole/src/org/litesoft/aokeyhole/swing/mains/mementobeans/BeanSubSystemBuilder.java

Diff revisions: vs.
  @@ -1,25 +1,35 @@
1 1 package org.litesoft.aokeyhole.swing.mains.mementobeans;
2 2
3 + import java.util.*;
4 +
3 5 import org.litesoft.aokeyhole.persist.*;
6 + import org.litesoft.aokeyhole.swing.mains.mementobeans.support.*;
7 + import org.litesoft.core.typeutils.*;
4 8
5 - public class BeanSubSystemBuilder implements SubSystemBuilder
9 + public class BeanSubSystemBuilder extends DoneableBuilder implements SubSystemBuilder
6 10 {
7 - private BeanSubSystemState mState;
11 + private final BeanSubSystemState mState;
12 + private final Map<String, BeanObjectBuilder> mObjectBuildersByObjectName = Maps.newHashMap();
8 13
9 14 public BeanSubSystemBuilder( BeanSubSystemState pState )
10 15 {
16 + super( SUB_SYSTEM );
11 17 mState = pState;
12 18 }
13 19
14 20 @Override
15 21 public ObjectBuilder createObjectBuilder( String pType, String pName, String pParentName, String[] pNotes )
16 22 {
17 - return null; //To change body of implemented methods use File | Settings | File Templates.
23 + checkCanDone();
24 + BeanObjectBuilder zBuilder = new BeanObjectBuilder( pType, pName, pParentName, pNotes );
25 + mObjectBuildersByObjectName.put( pName, zBuilder );
26 + return child( zBuilder );
18 27 }
19 28
20 29 @Override
21 30 public SubSystemWriter done()
22 31 {
23 - return null; //To change body of implemented methods use File | Settings | File Templates.
32 + LLdone();
33 + return mState.getSubSystemWriter( mObjectBuildersByObjectName );
24 34 }
25 35 }