Coverage Report - org.jtheque.primary.view.impl.choice.AbstractPrimaryDeleteChoiceAction
 
Classes in this File Line Coverage Branch Coverage Complexity
AbstractPrimaryDeleteChoiceAction
0 %
0/4
N/A
1
AbstractPrimaryDeleteChoiceAction$1
N/A
N/A
1
AbstractPrimaryDeleteChoiceAction$BorrowerDeleter
0 %
0/5
N/A
1
AbstractPrimaryDeleteChoiceAction$CountryDeleter
0 %
0/5
N/A
1
AbstractPrimaryDeleteChoiceAction$KindDeleter
0 %
0/5
N/A
1
AbstractPrimaryDeleteChoiceAction$LanguageDeleter
0 %
0/5
N/A
1
AbstractPrimaryDeleteChoiceAction$LendingDeleter
0 %
0/5
N/A
1
AbstractPrimaryDeleteChoiceAction$SagaDeleter
0 %
0/5
N/A
1
AbstractPrimaryDeleteChoiceAction$TypeDeleter
0 %
0/5
N/A
1
 
 1  
 package org.jtheque.primary.view.impl.choice;
 2  
 
 3  
 import org.jtheque.core.utils.CoreUtils;
 4  
 import org.jtheque.primary.PrimaryConstants;
 5  
 import org.jtheque.primary.controller.impl.undo.GenericDataDeletedEdit;
 6  
 import org.jtheque.primary.od.able.Lending;
 7  
 import org.jtheque.primary.od.able.Person;
 8  
 import org.jtheque.primary.od.able.SimpleData;
 9  
 import org.jtheque.primary.services.able.ILendingsService;
 10  
 import org.jtheque.primary.services.able.IPersonService;
 11  
 import org.jtheque.primary.services.able.ISimpleDataService;
 12  
 
 13  
 /*
 14  
  * This file is part of JTheque.
 15  
  *            
 16  
  * JTheque is free software: you can redistribute it and/or modify
 17  
  * it under the terms of the GNU General Public License as published by
 18  
  * the Free Software Foundation, either version 3 of the License. 
 19  
  *
 20  
  * JTheque is distributed in the hope that it will be useful,
 21  
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 22  
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 23  
  * GNU General Public License for more details.
 24  
  *
 25  
  * You should have received a copy of the GNU General Public License
 26  
  * along with JTheque.  If not, see <http://www.gnu.org/licenses/>.
 27  
  */
 28  
 
 29  
 /**
 30  
  * An abstract delete action for the choice view.
 31  
  *
 32  
  * @author Baptiste Wicht
 33  
  */
 34  0
 public abstract class AbstractPrimaryDeleteChoiceAction extends AbstractDeleteChoiceAction {
 35  
         /**
 36  
          * Add the deleters for the datas of the primary utils.          * 
 37  
          */
 38  
         protected final void addPrimaryDeleters(){
 39  0
                 addDeleters(new CountryDeleter(), new BorrowerDeleter(), new SagaDeleter(),
 40  
                                 new KindDeleter(), new TypeDeleter(), new LanguageDeleter(), new LendingDeleter());
 41  0
         }
 42  
 
 43  
         /**
 44  
          * A Deleter for Kind object.
 45  
          *
 46  
          * @author Baptiste Wicht
 47  
          */
 48  0
         private static final class KindDeleter extends Deleter<SimpleData> {
 49  
                 /**
 50  
                  * Construct a new KindDeleter.
 51  
                  */
 52  
                 private KindDeleter() {
 53  0
                         super(SimpleData.DataType.KIND.getDataType());
 54  0
                 }
 55  
 
 56  
                 @Override
 57  
                 public void delete(SimpleData o) {
 58  0
                         addEditIfDeleted(
 59  
                                         CoreUtils.<ISimpleDataService>getBean("kindsService").delete(o),
 60  
                                         new GenericDataDeletedEdit<SimpleData>("kindsService", o));
 61  0
                 }
 62  
         }
 63  
 
 64  
         /**
 65  
          * A Deleter for Type object.
 66  
          *
 67  
          * @author Baptiste Wicht
 68  
          */
 69  0
         private static final class TypeDeleter extends Deleter<SimpleData> {
 70  
                 /**
 71  
                  * Construct a new TypeDeleter.
 72  
                  */
 73  
                 private TypeDeleter() {
 74  0
                         super(SimpleData.DataType.TYPE.getDataType());
 75  0
                 }
 76  
 
 77  
                 @Override
 78  
                 public void delete(SimpleData o) {
 79  0
                         addEditIfDeleted(
 80  
                                         CoreUtils.<ISimpleDataService>getBean("typesService").delete(o),
 81  
                                         new GenericDataDeletedEdit<SimpleData>("typesService", o));
 82  0
                 }
 83  
         }
 84  
 
 85  
         /**
 86  
          * A Deleter for Language object.
 87  
          *
 88  
          * @author Baptiste Wicht
 89  
          */
 90  0
         private static final class LanguageDeleter extends Deleter<SimpleData> {
 91  
                 /**
 92  
                  * Construct a new LanguageDeleter.
 93  
                  */
 94  
                 private LanguageDeleter() {
 95  0
                         super(SimpleData.DataType.LANGUAGE.getDataType());
 96  0
                 }
 97  
 
 98  
                 @Override
 99  
                 public void delete(SimpleData o) {
 100  0
                         addEditIfDeleted(
 101  
                                         CoreUtils.<ISimpleDataService>getBean("languagesService").delete(o),
 102  
                                         new GenericDataDeletedEdit<SimpleData>("languagesService", o));
 103  0
                 }
 104  
         }
 105  
 
 106  
     /**
 107  
      * A Deleter for Country object.
 108  
      *
 109  
      * @author Baptiste Wicht
 110  
      */
 111  0
     private static final class CountryDeleter extends Deleter<SimpleData> {
 112  
         /**
 113  
          * Construct a new CountryDeleter.
 114  
          */
 115  
         private CountryDeleter() {
 116  0
             super(SimpleData.DataType.COUNTRY.getDataType());
 117  0
         }
 118  
 
 119  
         @Override
 120  
         public void delete(SimpleData o) {
 121  0
             addEditIfDeleted(
 122  
                                         CoreUtils.<ISimpleDataService>getBean("countriesService").delete(o),
 123  
                                         new GenericDataDeletedEdit<SimpleData>("countriesService", o));
 124  0
         }
 125  
     }
 126  
 
 127  
     /**
 128  
      * A Deleter for Borrower object.
 129  
      *
 130  
      * @author Baptiste Wicht
 131  
      */
 132  0
     private static final class BorrowerDeleter extends Deleter<Person> {
 133  
         /**
 134  
          * Construct a new BorrowerDeleter.
 135  
          */
 136  
         private BorrowerDeleter() {
 137  0
             super(PrimaryConstants.BORROWERS);
 138  0
         }
 139  
 
 140  
         @Override
 141  
         public void delete(Person o) {
 142  0
             addEditIfDeleted(
 143  
                                         CoreUtils.<IPersonService>getBean("borrowersService").delete(o),
 144  
                                         new GenericDataDeletedEdit<Person>("borrowersService", o));
 145  0
         }
 146  
     }
 147  
 
 148  
     /**
 149  
      * A Deleter for Saga object.
 150  
      *
 151  
      * @author Baptiste Wicht
 152  
      */
 153  0
     private static final class SagaDeleter extends Deleter<SimpleData> {
 154  
         /**
 155  
          * Construct a new SagaDeleter.
 156  
          */
 157  
         private SagaDeleter() {
 158  0
             super(SimpleData.DataType.SAGA.getDataType());
 159  0
         }
 160  
 
 161  
         @Override
 162  
         public void delete(SimpleData o) {
 163  0
             addEditIfDeleted(
 164  
                                         CoreUtils.<ISimpleDataService>getBean("sagasService").delete(o),
 165  
                                         new GenericDataDeletedEdit<SimpleData>("sagasService", o));
 166  0
         }
 167  
     }
 168  
 
 169  
     /**
 170  
      * A <code>Deleter</code> for Lending.
 171  
      *
 172  
      * @author Baptiste Wicht
 173  
      */
 174  0
     private static final class LendingDeleter extends Deleter<Lending> {
 175  
         /**
 176  
          * Construct a new <code>LendingDeleter</code>.
 177  
          */
 178  
         private LendingDeleter() {
 179  0
             super(ILendingsService.DATA_TYPE);
 180  0
         }
 181  
 
 182  
         @Override
 183  
         public void delete(Lending o) {
 184  0
             addEditIfDeleted(
 185  
                                         CoreUtils.<ILendingsService>getBean("lendingsService").delete(o),
 186  
                                         new GenericDataDeletedEdit<Lending>("lendingsService", o));
 187  0
         }
 188  
     }
 189  
 }