View Javadoc

1   package com.sri.emo.wizard.wizardgateway;
2   
3   import com.jcorporate.expresso.core.controller.*;
4   import com.jcorporate.expresso.core.db.DBException;
5   import com.sri.common.controller.StateHandler;
6   import com.sri.emo.dbobj.WizDefinition;
7   import com.sri.emo.wizard.WizDefinitionRepository;
8   import com.sri.emo.wizard.expressoimpl.WizardController;
9   
10  /***
11   * Prompts to delete a wizard.
12   *
13   * @author Michael Rimov
14   */
15  public class PromptDeleteWizard extends WizardGatewayHandler implements StateHandler {
16  
17      /***
18       * Name of the State for which this handler deals with.
19       */
20      public static final String STATE_NAME = "promptDelete";
21  
22  
23      /***
24       * Friendly description of this handler.
25       */
26      public static final String STATE_DESCRIPTION = "Prompt to Delete a Wizard";
27  
28  
29      /***
30       * Constructs this particular state handler.
31       *
32       * @param handlerOwner Controller the controller that is the parent of this
33       *                     state handler.
34       * @param myRepository WizDefinitionRepository the repository to use
35       *                     for data access methods.
36       */
37      public PromptDeleteWizard(final Controller handlerOwner, final WizDefinitionRepository myRepository) {
38          super(handlerOwner, myRepository);
39      }
40  
41  
42      /***
43       * Called to handle the request.
44       *
45       * @param request  ControllerRequest The Function's ControllerRequest
46       *                 object.
47       * @param response ControllerResponse The Function's ControllerResponse
48       *                 object.
49       * @throws DBException         upon underlying database exception error.
50       * @throws ControllerException upon underlying ControllerException error.
51       */
52      public void handleRequest(final ExpressoRequest request, final ExpressoResponse response) throws DBException,
53              ControllerException {
54          response.setTitle("Confirm Delete Wizard");
55          WizDefinition wizdef = getWizDef(request);
56          response.add(new Output("prompt", wizdef.getWizName()));
57  
58          Transition yes = new Transition("yes", "yes", this.getOwner().getClass(), DoDeleteWizard.STATE_NAME);
59          yes.addParam(WizardController.WIZ_PARAMETER_ID, request.getParameter(WizardController.WIZ_PARAMETER_ID));
60          response.add(yes);
61          Transition no = new Transition("no", "no", this.getOwner().getClass(), ListWizards.STATE_NAME);
62          response.add(no);
63      }
64  }