001: /*
002: * JFolder, Copyright 2001-2006 Gary Steinmetz
003: *
004: * Distributable under LGPL license.
005: * See terms of license at gnu.org.
006: */
007:
008: package org.jfolder.console.web.admin.macro.execute;
009:
010: //base classes
011: import java.io.IOException;
012: import java.util.ArrayList;
013: import javax.servlet.ServletException;
014:
015: //project specific classes
016: import org.jfolder.common.UnexpectedSystemException;
017: import org.jfolder.common.function.WebPageTagPreferences;
018: import org.jfolder.common.tagging.ConceptRollupTag;
019: import org.jfolder.common.tagging.ConceptTagCharacteristic;
020: import org.jfolder.common.tagging.ConceptTagPreferences;
021: import org.jfolder.common.tagging.RootConceptTagHolder;
022: import org.jfolder.common.utils.misc.CommonSeparators;
023: import org.jfolder.common.utils.misc.MiscHelper;
024: import org.jfolder.common.utils.web.ParameterSet;
025: import org.jfolder.common.web.template.CreationParameterContext;
026: import org.jfolder.common.web.template.SubmitActionContext;
027: import org.jfolder.common.web.template.SubmitActionParameters;
028: import org.jfolder.console.base.BaseConsoleServlet;
029: import org.jfolder.console.base.ConsolePageContext;
030: import org.jfolder.console.base.ConsolePageParameters;
031: import org.jfolder.console.base.ConsolePageSession;
032: import org.jfolder.console.base.NamesForParentCpc;
033: import org.jfolder.console.macro.ConsoleMacro;
034: import org.jfolder.console.macro.ConsoleMacroTagHelper;
035: import org.jfolder.console.macro.v1.OpenSectionIfClosedConsoleMacroTag;
036: import org.jfolder.console.macro.v1.RootV1ConsoleMacroTag;
037: import org.jfolder.security.model.UserHolder;
038:
039: //other classes
040:
041: public class PetStoreCreator extends CommonPetStoreActivity {
042:
043: //
044: private final static String APP_NAME = "PetStore";
045:
046: //
047: private PetStoreCreator() {
048: }
049:
050: //
051:
052: //
053: public final static RootConceptTagHolder getPetStoreMacro(
054: String inDatabase) {
055: //
056:
057: RootConceptTagHolder outValue = null;
058:
059: //
060: outValue = ConsoleMacroTagHelper.getEmptyMacro();
061: ConsoleMacro cm = ((ConsoleMacro) outValue
062: .getFirstChildConceptTag());
063: RootV1ConsoleMacroTag rv1cmt = ((RootV1ConsoleMacroTag) cm);
064:
065: //
066: cm.addDescriptionToNextPage("Very Beginning");
067: //
068: PetStoreDatabase.createDatabase(rv1cmt, APP_NAME, inDatabase);
069: /*
070: PetStoreActivityCreateApplication.getCreateApp(rv1cmt, APP_NAME);
071: //
072: //
073: cm.addDescriptionToNextPage(
074: "Before /MainTemplate");
075: //
076: PetStoreSectionMainTemplate.createMainTemplate(rv1cmt, APP_NAME);
077: */
078: //
079: //
080: //
081: return outValue;
082: }
083:
084: private final static void formerContent() {
085: //
086: //
087: //
088: RootV1ConsoleMacroTag rv1cmt = null;
089: if (true) {
090: throw UnexpectedSystemException.unknownState();
091: }
092: //
093: PetStoreActivityCreateWebPage.getCreateWebPage(rv1cmt,
094: APP_NAME, "/", "WebPage");
095: //
096: PetStoreActivityOpenWebPage.getOpenWebPage(rv1cmt, APP_NAME,
097: "/", "WebPage");
098: //
099: //ArrayList refreshTraverse = new ArrayList();
100: //refreshTraverse.add("0");
101: String localWebPageCpc = NamesForParentCpc
102: .getDevelopWebPageCpcName(SubmitActionParameters.USER,
103: APP_NAME, SubmitActionParameters.WEB_PAGE, "/",
104: "WebPage");
105: //PetStoreActivitySelectMenuItem.getSelectMenuItem(
106: // rv1cmt, null, localWebPageCpc,
107: // ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
108: // ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
109: // getBaseTree(), refreshTraverse,
110: // "(main),[TABLE_BUTTON],MENU__EDIT", "(main),[MENU],MENU__EDIT");
111: //BasePanelessRcthEditConsolePageContext
112: //public final static CreationParameterContext createEditCpc(
113: // String inFromPage, String inHandle, String inHandleAlias,
114: // ConceptTagConstraint inCtcon, int inIndex, String inParentHandle,
115: // String inCreateOrUpdateAction, String inLabel, String inMenuId,
116: // throws IOException {
117: //
118: //
119: //PetStoreActivitySelectMenuItem.getSelectMenuItem(
120: // rv1cmt, null, localWebPageCpc,
121: // ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
122: // ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
123: // getBaseTree(),// refreshTraverse,
124: // "(main),[TABLE_BUTTON],MENU__EDIT",
125: // "(main),(left-right?0-0-L?0-0-R),(up-down?2-0-U?2-0-D),"
126: // + "(pane-rcth-edit),(paneless-rcth-edit),[TAG_BASE],@,0,@,0,"
127: // + "[DONT_RECORD_THIS_BRANCH],[MENU],MENU__CONCEPT_TAG",
128: // null, "html");
129: WebPageTagPreferences localWptp = new WebPageTagPreferences();
130: String nextHandle = localWptp.getRootHandle()
131: + localWptp.getHandleConjunction()
132: + localWptp.getUnconstrainedSymbol();
133: //
134: PetStoreActivityEditRcth.addDynamic(localWebPageCpc,
135: ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
136: ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
137: getBaseTree(), rv1cmt, nextHandle,
138: convertHandleForStudio(localWptp, nextHandle), 0, null,
139: "html");
140: //
141: PetStoreActivityGoToWithinRcth.goTo(localWebPageCpc,
142: ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
143: ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
144: getBaseTree(), rv1cmt, "@$0$@$0", "@,0,@,0", "@,0");
145: //
146: PetStoreActivitySaveOrCancelRcth.saveRcth(localWebPageCpc,
147: ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
148: ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
149: getBaseTree(), rv1cmt);
150: //
151: PetStoreActivitySaveOrCancelRcth.cancelRcth(localWebPageCpc,
152: ConsolePageParameters.SERVLET_DEVELOP_WEB_PAGE,
153: ConsolePageParameters.SERVLET_CONSOLE, getBaseTree(),
154: rv1cmt);
155: //
156: //
157: PetStoreActivityDeployApplication.deployApp(rv1cmt, APP_NAME);
158: //
159: //
160: //ConceptTagCharacteristic currentActionCtchar = null;
161: //String fromHandle = null;
162: //String sourPage = null;
163: //String destPage = null;
164: //String treeState = null;
165: //////////////
166: //fromHandle = NamesForParentCpc.getConsoleScreenCpcName();
167: //sourPage = ConsolePageParameters.SERVLET_CONSOLE;
168: //destPage = ConsolePageParameters.SERVLET_CONSOLE;
169: //treeState = CommonSeparators.BRANCH_SEPARATOR + "(main)"
170: // + CommonSeparators.BRANCH_SEPARATOR;
171: ////
172: //currentActionCtchar = rv1cmt.generateNextPage(
173: // fromHandle, fromHandle, sourPage, destPage, treeState);
174: ////
175: //OpenSectionIfClosedConsoleMacroTag.newInstance(
176: // currentActionCtchar, "(main),ADMINISTER",
177: // "(main),ADMINISTER,[TOGGLE_CALLER],TOG_CALL__ADMIN");
178:
179: //notes
180: //include property to select database type
181: //
182: //declare properties
183: //if project is deployed, remove it
184: //if project is under development, remove it
185: //create project under development
186: }
187:
188: private final static String convertHandleForStudio(
189: ConceptTagPreferences inCtp, String inHandle) {
190: //
191: String outValue = null;
192:
193: outValue = MiscHelper.literalReplace(inHandle, inCtp
194: .getHandleConjunction(),
195: CommonSeparators.TOGGLE_LINK_SEPARATOR);
196:
197: return outValue;
198: }
199: }
|