Coverage Report - org.jtheque.films.controllers.impl.state.realizer.NewRealizerState
 
Classes in this File Line Coverage Branch Coverage Complexity
NewRealizerState
0 %
0/36
0 %
0/14
1.333
 
 1  
 package org.jtheque.films.controllers.impl.state.realizer;
 2  
 
 3  
 /*
 4  
  * This file is part of JTheque.
 5  
  *
 6  
  * JTheque is free software: you can redistribute it and/or modify
 7  
  * it under the terms of the GNU General Public License as published by
 8  
  * the Free Software Foundation, either version 3 of the License.
 9  
  *
 10  
  * JTheque is distributed in the hope that it will be useful,
 11  
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 12  
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 13  
  * GNU General Public License for more details.
 14  
  *
 15  
  * You should have received a copy of the GNU General Public License
 16  
  * along with JTheque.  If not, see <http://www.gnu.org/licenses/>.
 17  
  */
 18  
 
 19  
 import org.jtheque.core.managers.Managers;
 20  
 import org.jtheque.core.managers.undo.IUndoRedoManager;
 21  
 import org.jtheque.core.managers.view.able.IViewManager;
 22  
 import org.jtheque.films.controllers.able.IRealizerController;
 23  
 import org.jtheque.films.services.able.IRealizersService;
 24  
 import org.jtheque.films.view.impl.fb.IPersonFormBean;
 25  
 import org.jtheque.films.view.impl.models.able.IRealizersModel;
 26  
 import org.jtheque.primary.controller.able.ControllerState;
 27  
 import org.jtheque.primary.controller.able.FormBean;
 28  
 import org.jtheque.primary.controller.impl.undo.CreatedPersonEdit;
 29  
 import org.jtheque.primary.od.able.Data;
 30  
 import org.jtheque.primary.od.able.Person;
 31  
 import org.jtheque.primary.view.able.ViewMode;
 32  
 
 33  
 import javax.annotation.Resource;
 34  
 
 35  
 /**
 36  
  * A realizer controller state for the state "new".
 37  
  *
 38  
  * @author Baptiste Wicht
 39  
  */
 40  0
 public final class NewRealizerState implements ControllerState {
 41  
     @Resource
 42  
     private IRealizerController controller;
 43  
 
 44  
     @Resource
 45  
     private IRealizersService realizersService;
 46  
 
 47  
     /**
 48  
      * Return the model of the view.
 49  
      *
 50  
      * @return The model of the view.
 51  
      */
 52  
     private IRealizersModel getViewModel() {
 53  0
         return controller.getViewModel();
 54  
     }
 55  
 
 56  
     @Override
 57  
     public void apply() {
 58  0
         getViewModel().setCurrentRealizer(realizersService.getEmptyRealizer());
 59  0
         controller.getView().setEnabled(true);
 60  0
         controller.getView().getToolbarView().setDisplayMode(ViewMode.NEW);
 61  0
     }
 62  
 
 63  
     @Override
 64  
     public ControllerState save(FormBean bean) {
 65  0
         IPersonFormBean infos = (IPersonFormBean) bean;
 66  
 
 67  0
         Person realizer = realizersService.getEmptyRealizer();
 68  
 
 69  0
         realizer.setName(infos.getName());
 70  0
         realizer.setFirstName(infos.getFirstName());
 71  0
         realizer.setNote(infos.getNote());
 72  0
         realizer.setTheCountry(infos.getCountry());
 73  
 
 74  0
         realizersService.create(realizer);
 75  
 
 76  0
         Managers.getManager(IUndoRedoManager.class).addEdit(new CreatedPersonEdit(realizer));
 77  
 
 78  0
         controller.getView().resort();
 79  
 
 80  0
         return controller.getViewState();
 81  
     }
 82  
 
 83  
     @Override
 84  
     public ControllerState cancel() {
 85  0
         ControllerState nextState = null;
 86  
 
 87  0
         controller.getView().selectFirst();
 88  
 
 89  0
         if (realizersService.getRealizers().size() <= 0) {
 90  0
             nextState = controller.getViewState();
 91  
         }
 92  
 
 93  0
         return nextState;
 94  
     }
 95  
 
 96  
     @Override
 97  
     public ControllerState create() {
 98  
         //Do nothing
 99  
 
 100  0
         return null;
 101  
     }
 102  
 
 103  
     @Override
 104  
     public ControllerState manualEdit() {
 105  
         //Do nothing
 106  
 
 107  0
         return null;
 108  
     }
 109  
 
 110  
     @Override
 111  
     public ControllerState delete() {
 112  
         //Do nothing
 113  
 
 114  0
         return null;
 115  
     }
 116  
 
 117  
     @Override
 118  
     public ControllerState autoEdit(Data data) {
 119  0
         Person realizer = (Person) data;
 120  
 
 121  0
         assert realizer.getType().equals(IRealizersService.PERSON_TYPE) : "The person must of type Actor";
 122  
 
 123  0
         if (Managers.getManager(IViewManager.class).askI18nUserForConfirmation(
 124  
                 "realizer.dialogs.confirmSave", "realizer.dialogs.confirmSave.title")) {
 125  0
             controller.save();
 126  
         }
 127  
 
 128  0
         getViewModel().setCurrentRealizer(realizer);
 129  
 
 130  0
         return controller.getAutoAddState();
 131  
     }
 132  
 
 133  
     @Override
 134  
     public ControllerState view(Data data) {
 135  0
         Person realizer = (Person) data;
 136  
 
 137  0
         assert realizer.getType().equals(IRealizersService.PERSON_TYPE) : "The person must of type Actor";
 138  
 
 139  0
         if (Managers.getManager(IViewManager.class).askI18nUserForConfirmation(
 140  
                 "realizer.dialogs.confirmSave", "realizer.dialogs.confirmSave.title")) {
 141  0
             controller.save();
 142  
         }
 143  
 
 144  0
         getViewModel().setCurrentRealizer(realizer);
 145  
 
 146  0
         return controller.getViewState();
 147  
     }
 148  
 }