Best Cerberus-source code snippet using org.cerberus.crud.service.ICountryEnvironmentParametersService.createList
Source:CountryEnvironmentParametersService.java
...96 answer = countryEnvironmentParametersDao.create(object);97 return answer;98 }99 @Override100 public Answer createList(List<CountryEnvironmentParameters> objectList) {101 Answer ans = new Answer(null);102 for (CountryEnvironmentParameters objectToCreate : objectList) {103 ans = create(objectToCreate);104 }105 return ans;106 }107 @Override108 public Answer deleteList(List<CountryEnvironmentParameters> objectList) {109 Answer ans = new Answer(null);110 for (CountryEnvironmentParameters objectToCreate : objectList) {111 ans = countryEnvironmentParametersDao.delete(objectToCreate);112 }113 return ans;114 }115 @Override116 public Answer compareListAndUpdateInsertDeleteElements(String system, String country, String environement, List<CountryEnvironmentParameters> newList) {117 Answer ans = new Answer(null);118 MessageEvent msg1 = new MessageEvent(MessageEventEnum.GENERIC_OK);119 Answer finalAnswer = new Answer(msg1);120 List<CountryEnvironmentParameters> oldList = new ArrayList<>();121 try {122 oldList = this.convert(this.readByVarious(system, country, environement, null));123 } catch (CerberusException ex) {124 LOG.error(ex, ex);125 }126 /**127 * Update and Create all objects database Objects from newList128 */129 List<CountryEnvironmentParameters> listToUpdateOrInsert = new ArrayList<>(newList);130 listToUpdateOrInsert.removeAll(oldList);131 List<CountryEnvironmentParameters> listToUpdateOrInsertToIterate = new ArrayList<>(listToUpdateOrInsert);132 for (CountryEnvironmentParameters objectDifference : listToUpdateOrInsertToIterate) {133 for (CountryEnvironmentParameters objectInDatabase : oldList) {134 if (objectDifference.hasSameKey(objectInDatabase)) {135 ans = this.update(objectDifference);136 finalAnswer = AnswerUtil.agregateAnswer(finalAnswer, (Answer) ans);137 listToUpdateOrInsert.remove(objectDifference);138 }139 }140 }141 /**142 * Delete all objects database Objects that do not exist from newList143 */144 List<CountryEnvironmentParameters> listToDelete = new ArrayList<>(oldList);145 listToDelete.removeAll(newList);146 List<CountryEnvironmentParameters> listToDeleteToIterate = new ArrayList<>(listToDelete);147 for (CountryEnvironmentParameters tcsDifference : listToDeleteToIterate) {148 for (CountryEnvironmentParameters tcsInPage : newList) {149 if (tcsDifference.hasSameKey(tcsInPage)) {150 listToDelete.remove(tcsDifference);151 }152 }153 }154 if (!listToDelete.isEmpty()) {155 ans = this.deleteList(listToDelete);156 finalAnswer = AnswerUtil.agregateAnswer(finalAnswer, (Answer) ans);157 }158 // We insert only at the end (after deletion of all potencial enreg - linked with #1281)159 if (!listToUpdateOrInsert.isEmpty()) {160 ans = this.createList(listToUpdateOrInsert);161 finalAnswer = AnswerUtil.agregateAnswer(finalAnswer, (Answer) ans);162 }163 return finalAnswer;164 }165 @Override166 public Answer compareListAndUpdateInsertDeleteElements(String system, String application, List<CountryEnvironmentParameters> newList) {167 Answer ans = new Answer(null);168 MessageEvent msg1 = new MessageEvent(MessageEventEnum.GENERIC_OK);169 Answer finalAnswer = new Answer(msg1);170 List<CountryEnvironmentParameters> oldList = new ArrayList<>();171 try {172 oldList = this.convert(this.readByVarious(system, null, null, application));173 } catch (CerberusException ex) {174 LOG.error(ex, ex);175 }176 /**177 * Update and Create all objects database Objects from newList178 */179 List<CountryEnvironmentParameters> listToUpdateOrInsert = new ArrayList<>(newList);180 listToUpdateOrInsert.removeAll(oldList);181 List<CountryEnvironmentParameters> listToUpdateOrInsertToIterate = new ArrayList<>(listToUpdateOrInsert);182 for (CountryEnvironmentParameters objectDifference : listToUpdateOrInsertToIterate) {183 for (CountryEnvironmentParameters objectInDatabase : oldList) {184 if (objectDifference.hasSameKey(objectInDatabase)) {185 ans = this.update(objectDifference);186 finalAnswer = AnswerUtil.agregateAnswer(finalAnswer, (Answer) ans);187 listToUpdateOrInsert.remove(objectDifference);188 }189 }190 }191 /**192 * Delete all objects database Objects that do not exist from newList193 */194 List<CountryEnvironmentParameters> listToDelete = new ArrayList<>(oldList);195 listToDelete.removeAll(newList);196 List<CountryEnvironmentParameters> listToDeleteToIterate = new ArrayList<>(listToDelete);197 for (CountryEnvironmentParameters tcsDifference : listToDeleteToIterate) {198 for (CountryEnvironmentParameters tcsInPage : newList) {199 if (tcsDifference.hasSameKey(tcsInPage)) {200 listToDelete.remove(tcsDifference);201 }202 }203 }204 if (!listToDelete.isEmpty()) {205 ans = this.deleteList(listToDelete);206 finalAnswer = AnswerUtil.agregateAnswer(finalAnswer, (Answer) ans);207 }208 // We insert only at the end (after deletion of all potencial enreg - linked with #1281)209 if (!listToUpdateOrInsert.isEmpty()) {210 ans = this.createList(listToUpdateOrInsert);211 finalAnswer = AnswerUtil.agregateAnswer(finalAnswer, (Answer) ans);212 }213 return finalAnswer;214 }215 @Override216 public CountryEnvironmentParameters convert(AnswerItem<CountryEnvironmentParameters> answerItem) throws CerberusException {217 if (answerItem.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {218 //if the service returns an OK message then we can get the item219 return (CountryEnvironmentParameters) answerItem.getItem();220 }221 throw new CerberusException(new MessageGeneral(MessageGeneralEnum.DATA_OPERATION_ERROR));222 }223 @Override224 public List<CountryEnvironmentParameters> convert(AnswerList<CountryEnvironmentParameters> answerList) throws CerberusException {...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!