Changes for checkstyle 8.32
[policy/apex-pdp.git] / model / model-api / src / main / java / org / onap / policy / apex / model / modelapi / impl / ApexModelImpl.java
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2016-2018 Ericsson. All rights reserved.
4  *  Modifications Copyright (C) 2019 Samsung Electronics Co., Ltd.
5  *  Modifications Copyright (C) 2019 Nordix Foundation.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  *
19  * SPDX-License-Identifier: Apache-2.0
20  * ============LICENSE_END=========================================================
21  */
22
23 package org.onap.policy.apex.model.modelapi.impl;
24
25 import java.util.Properties;
26 import org.onap.policy.apex.model.basicmodel.dao.DaoParameters;
27 import org.onap.policy.apex.model.modelapi.ApexApiResult;
28 import org.onap.policy.apex.model.modelapi.ApexModel;
29 import org.onap.policy.apex.model.policymodel.concepts.AxPolicyModel;
30
31 /**
32  * This class is an implementation of a facade on an Apex model for editors of Apex models.
33  *
34  * @author Liam Fallon (liam.fallon@ericsson.com)
35  */
36 public final class ApexModelImpl implements ApexModel {
37     // The policy model being acted upon
38     private AxPolicyModel policyModel = new AxPolicyModel();
39
40     // The file name for the loaded file
41     private String fileName = null;
42
43     // @formatter:off
44     private ModelFacade modelFacade;
45     private KeyInformationFacade keyInformationFacade;
46     private ContextSchemaFacade contextSchemaFacade;
47     private EventFacade eventFacade;
48     private ContextAlbumFacade contextAlbumFacade;
49     private TaskFacade taskFacade;
50     private PolicyFacade policyFacade;
51     private ModelHandlerFacade modelHandlerFacade;
52     // @formatter:on
53
54     private Properties apexProperties;
55     private boolean jsonMode;
56
57     /**
58      * Create an implementation of the Apex editor and model APIs.
59      *
60      * @param apexProperties The properties to use for the model
61      * @param jsonMode set to true to return JSON strings in list and delete operations, otherwise set to false
62      */
63     public ApexModelImpl(final Properties apexProperties, final boolean jsonMode) {
64         this.apexProperties = apexProperties;
65         this.jsonMode = jsonMode;
66
67         // @formatter:off
68         this.modelFacade          = new ModelFacade(this, apexProperties, jsonMode);
69         this.keyInformationFacade = new KeyInformationFacade(this, apexProperties, jsonMode);
70         this.contextSchemaFacade  = new ContextSchemaFacade(this, apexProperties, jsonMode);
71         this.eventFacade          = new EventFacade(this, apexProperties, jsonMode);
72         this.contextAlbumFacade   = new ContextAlbumFacade(this, apexProperties, jsonMode);
73         this.taskFacade           = new TaskFacade(this, apexProperties, jsonMode);
74         this.policyFacade         = new PolicyFacade(this, apexProperties, jsonMode);
75         this.modelHandlerFacade   = new ModelHandlerFacade(this, apexProperties, jsonMode);
76         // @formatter:on
77     }
78
79     /**
80      * Constructor, prevents this class being sub-classed.
81      */
82     private ApexModelImpl() {
83         // Private constructor to block subclassing
84     }
85
86     /**
87      * {@inheritDoc}.
88      */
89     @Override
90     public ApexModel clone() {
91         ApexModelImpl ret = new ApexModelImpl();
92         // @formatter:off
93         ret.policyModel          = new AxPolicyModel(policyModel);
94         ret.fileName             = this.fileName;
95         ret.apexProperties       = this.apexProperties;
96         ret.jsonMode             = this.jsonMode;
97         ret.modelFacade          = new ModelFacade(ret, this.apexProperties, this.jsonMode);
98         ret.keyInformationFacade = new KeyInformationFacade(ret, this.apexProperties, this.jsonMode);
99         ret.contextSchemaFacade  = new ContextSchemaFacade(ret, this.apexProperties, this.jsonMode);
100         ret.eventFacade          = new EventFacade(ret, this.apexProperties, this.jsonMode);
101         ret.contextAlbumFacade   = new ContextAlbumFacade(ret, this.apexProperties, this.jsonMode);
102         ret.taskFacade           = new TaskFacade(ret, this.apexProperties, this.jsonMode);
103         ret.policyFacade         = new PolicyFacade(ret, this.apexProperties, this.jsonMode);
104         ret.modelHandlerFacade   = new ModelHandlerFacade(ret, this.apexProperties, this.jsonMode);
105         // @formatter:on
106
107         return ret;
108     }
109
110     /**
111      * {@inheritDoc}.
112      */
113     @Override
114     public ApexApiResult createModel(final String name, final String version, final String uuid,
115             final String description) {
116         return modelFacade.createModel(name, version, uuid, description);
117     }
118
119     /**
120      * {@inheritDoc}.
121      */
122     @Override
123     public ApexApiResult updateModel(final String name, final String version, final String uuid,
124             final String description) {
125         return modelFacade.updateModel(name, version, uuid, description);
126     }
127
128     /**
129      * {@inheritDoc}.
130      */
131     @Override
132     public ApexApiResult getModelKey() {
133         return modelFacade.getModelKey();
134     }
135
136     /**
137      * {@inheritDoc}.
138      */
139     @Override
140     public ApexApiResult listModel() {
141         return modelFacade.listModel();
142     }
143
144     /**
145      * {@inheritDoc}.
146      */
147     @Override
148     public ApexApiResult deleteModel() {
149         return modelFacade.deleteModel();
150     }
151
152     /**
153      * {@inheritDoc}.
154      */
155     @Override
156     public ApexApiResult createKeyInformation(final String name, final String version, final String uuid,
157             final String description) {
158         return keyInformationFacade.createKeyInformation(name, version, uuid, description);
159     }
160
161     /**
162      * {@inheritDoc}.
163      */
164     @Override
165     public ApexApiResult updateKeyInformation(final String name, final String version, final String uuid,
166             final String description) {
167         return keyInformationFacade.updateKeyInformation(name, version, uuid, description);
168     }
169
170     /**
171      * {@inheritDoc}.
172      */
173     @Override
174     public ApexApiResult listKeyInformation(final String name, final String version) {
175         return keyInformationFacade.listKeyInformation(name, version);
176     }
177
178     /**
179      * {@inheritDoc}.
180      */
181     @Override
182     public ApexApiResult deleteKeyInformation(final String name, final String version) {
183         return keyInformationFacade.deleteKeyInformation(name, version);
184     }
185
186     /**
187      * {@inheritDoc}.
188      */
189     @Override
190     public ApexApiResult validateKeyInformation(final String name, final String version) {
191         return keyInformationFacade.validateKeyInformation(name, version);
192     }
193
194     /**
195      * {@inheritDoc}.
196      */
197     @Override
198     public ApexApiResult createContextSchema(final String name, final String version, final String schemaFlavour,
199             final String schemaDefinition, final String uuid, final String description) {
200         return contextSchemaFacade.createContextSchema(name, version, schemaFlavour, schemaDefinition, uuid,
201                 description);
202     }
203
204     /**
205      * {@inheritDoc}.
206      */
207     @Override
208     public ApexApiResult updateContextSchema(final String name, final String version, final String schemaFlavour,
209             final String schemaDefinition, final String uuid, final String description) {
210         return contextSchemaFacade.updateContextSchema(name, version, schemaFlavour, schemaDefinition, uuid,
211                 description);
212     }
213
214     /**
215      * {@inheritDoc}.
216      */
217     @Override
218     public ApexApiResult listContextSchemas(final String name, final String version) {
219         return contextSchemaFacade.listContextSchemas(name, version);
220     }
221
222     /**
223      * {@inheritDoc}.
224      */
225     @Override
226     public ApexApiResult deleteContextSchema(final String name, final String version) {
227         return contextSchemaFacade.deleteContextSchema(name, version);
228     }
229
230     /**
231      * {@inheritDoc}.
232      */
233     @Override
234     public ApexApiResult validateContextSchemas(final String name, final String version) {
235         return contextSchemaFacade.validateContextSchemas(name, version);
236     }
237
238     /**
239      * {@inheritDoc}.
240      */
241     @Override
242     public ApexApiResult createEvent(final String name, final String version, final String nameSpace,
243             final String source, final String target, final String uuid, final String description) {
244         return eventFacade.createEvent(name, version, nameSpace, source, target, uuid, description);
245     }
246
247     /**
248      * {@inheritDoc}.
249      */
250     @Override
251     public ApexApiResult updateEvent(final String name, final String version, final String nameSpace,
252             final String source, final String target, final String uuid, final String description) {
253         return eventFacade.updateEvent(name, version, nameSpace, source, target, uuid, description);
254     }
255
256     /**
257      * {@inheritDoc}.
258      */
259     @Override
260     public ApexApiResult listEvent(final String name, final String version) {
261         return eventFacade.listEvent(name, version);
262     }
263
264     /**
265      * {@inheritDoc}.
266      */
267     @Override
268     public ApexApiResult deleteEvent(final String name, final String version) {
269         return eventFacade.deleteEvent(name, version);
270     }
271
272     /**
273      * {@inheritDoc}.
274      */
275     @Override
276     public ApexApiResult validateEvent(final String name, final String version) {
277         return eventFacade.validateEvent(name, version);
278     }
279
280     /**
281      * {@inheritDoc}.
282      */
283     @Override
284     public ApexApiResult createEventPar(final String name, final String version, final String parName,
285             final String contextSchemaName, final String contextSchemaVersion, final boolean optional) {
286         return eventFacade.createEventPar(name, version, parName, contextSchemaName, contextSchemaVersion, optional);
287     }
288
289     /**
290      * {@inheritDoc}.
291      */
292     @Override
293     public ApexApiResult listEventPar(final String name, final String version, final String parName) {
294         return eventFacade.listEventPar(name, version, parName);
295     }
296
297     /**
298      * {@inheritDoc}.
299      */
300     @Override
301     public ApexApiResult deleteEventPar(final String name, final String version, final String parName) {
302         return eventFacade.deleteEventPar(name, version, parName);
303     }
304
305     /**
306      * {@inheritDoc}.
307      */
308     @Override
309     // CHECKSTYLE:OFF: checkstyle:parameterNumber
310     public ApexApiResult createContextAlbum(final String name, final String version, final String scope,
311             final String writable, final String contextSchemaName, final String contextSchemaVersion, final String uuid,
312             final String description) {
313         return contextAlbumFacade.createContextAlbum(new ContextAlbumBuilder().setName(name).setVersion(version)
314                 .setScope(scope).setWritable(writable).setContextSchemaName(contextSchemaName)
315                 .setContextSchemaVersion(contextSchemaVersion).setUuid(uuid).setDescription(description));
316     }
317     // CHECKSTYLE:ON: checkstyle:parameterNumber
318
319     /**
320      * {@inheritDoc}.
321      */
322     // CHECKSTYLE:OFF: checkstyle:parameterNumber
323     @Override
324     public ApexApiResult updateContextAlbum(final String name, final String version, final String scope,
325             final String writable, final String contextSchemaName, final String contextSchemaVersion, final String uuid,
326             final String description) {
327         return contextAlbumFacade.updateContextAlbum(new ContextAlbumBuilder().setName(name).setVersion(version)
328                 .setScope(scope).setWritable(writable).setContextSchemaName(contextSchemaName)
329                 .setContextSchemaVersion(contextSchemaVersion).setUuid(uuid).setDescription(description));
330     }
331     // CHECKSTYLE:ON: checkstyle:parameterNumber
332
333     /**
334      * {@inheritDoc}.
335      */
336     @Override
337     public ApexApiResult listContextAlbum(final String name, final String version) {
338         return contextAlbumFacade.listContextAlbum(name, version);
339     }
340
341     /**
342      * {@inheritDoc}.
343      */
344     @Override
345     public ApexApiResult deleteContextAlbum(final String name, final String version) {
346         return contextAlbumFacade.deleteContextAlbum(name, version);
347     }
348
349     /**
350      * {@inheritDoc}.
351      */
352     @Override
353     public ApexApiResult validateContextAlbum(final String name, final String version) {
354         return contextAlbumFacade.validateContextAlbum(name, version);
355     }
356
357     /**
358      * {@inheritDoc}.
359      */
360     @Override
361     public ApexApiResult createTask(final String name, final String version, final String uuid,
362             final String description) {
363         return taskFacade.createTask(name, version, uuid, description);
364     }
365
366     /**
367      * {@inheritDoc}.
368      */
369     @Override
370     public ApexApiResult updateTask(final String name, final String version, final String uuid,
371             final String description) {
372         return taskFacade.updateTask(name, version, uuid, description);
373     }
374
375     /**
376      * {@inheritDoc}.
377      */
378     @Override
379     public ApexApiResult listTask(final String name, final String version) {
380         return taskFacade.listTask(name, version);
381     }
382
383     /**
384      * {@inheritDoc}.
385      */
386     @Override
387     public ApexApiResult deleteTask(final String name, final String version) {
388         return taskFacade.deleteTask(name, version);
389     }
390
391     /**
392      * {@inheritDoc}.
393      */
394     @Override
395     public ApexApiResult validateTask(final String name, final String version) {
396         return taskFacade.validateTask(name, version);
397     }
398
399     /**
400      * {@inheritDoc}.
401      */
402     @Override
403     public ApexApiResult createTaskLogic(final String name, final String version, final String logicFlavour,
404             final String logic) {
405         return taskFacade.createTaskLogic(name, version, logicFlavour, logic);
406     }
407
408     /**
409      * {@inheritDoc}.
410      */
411     @Override
412     public ApexApiResult updateTaskLogic(final String name, final String version, final String logicFlavour,
413             final String logic) {
414         return taskFacade.updateTaskLogic(name, version, logicFlavour, logic);
415     }
416
417     /**
418      * {@inheritDoc}.
419      */
420     @Override
421     public ApexApiResult listTaskLogic(final String name, final String version) {
422         return taskFacade.listTaskLogic(name, version);
423     }
424
425     /**
426      * {@inheritDoc}.
427      */
428     @Override
429     public ApexApiResult deleteTaskLogic(final String name, final String version) {
430         return taskFacade.deleteTaskLogic(name, version);
431     }
432
433     /**
434      * {@inheritDoc}.
435      */
436     @Override
437     public ApexApiResult createTaskInputField(final String name, final String version, final String fieldName,
438             final String dataTypeName, final String dataTypeVersion, final boolean optional) {
439         return taskFacade.createTaskInputField(name, version, fieldName, dataTypeName, dataTypeVersion, optional);
440     }
441
442     /**
443      * {@inheritDoc}.
444      */
445     @Override
446     public ApexApiResult listTaskInputField(final String name, final String version, final String fieldName) {
447         return taskFacade.listTaskInputField(name, version, fieldName);
448     }
449
450     /**
451      * {@inheritDoc}.
452      */
453     @Override
454     public ApexApiResult deleteTaskInputField(final String name, final String version, final String fieldName) {
455         return taskFacade.deleteTaskInputField(name, version, fieldName);
456     }
457
458     /**
459      * {@inheritDoc}.
460      */
461     @Override
462     public ApexApiResult createTaskOutputField(final String name, final String version, final String fieldName,
463             final String dataTypeName, final String dataTypeVersion, final boolean optional) {
464         return taskFacade.createTaskOutputField(name, version, fieldName, dataTypeName, dataTypeVersion, optional);
465     }
466
467     /**
468      * {@inheritDoc}.
469      */
470     @Override
471     public ApexApiResult listTaskOutputField(final String name, final String version, final String fieldName) {
472         return taskFacade.listTaskOutputField(name, version, fieldName);
473     }
474
475     /**
476      * {@inheritDoc}.
477      */
478     @Override
479     public ApexApiResult deleteTaskOutputField(final String name, final String version, final String fieldName) {
480         return taskFacade.deleteTaskOutputField(name, version, fieldName);
481     }
482
483     /**
484      * {@inheritDoc}.
485      */
486     @Override
487     public ApexApiResult createTaskParameter(final String name, final String version, final String parName,
488             final String defaultValue) {
489         return taskFacade.createTaskParameter(name, version, parName, defaultValue);
490     }
491
492     /**
493      * {@inheritDoc}.
494      */
495     @Override
496     public ApexApiResult listTaskParameter(final String name, final String version, final String parName) {
497         return taskFacade.listTaskParameter(name, version, parName);
498     }
499
500     /**
501      * {@inheritDoc}.
502      */
503     @Override
504     public ApexApiResult deleteTaskParameter(final String name, final String version, final String parName) {
505         return taskFacade.deleteTaskParameter(name, version, parName);
506     }
507
508     /**
509      * {@inheritDoc}.
510      */
511     @Override
512     public ApexApiResult createTaskContextRef(final String name, final String version, final String contextAlbumName,
513             final String contextAlbumVersion) {
514         return taskFacade.createTaskContextRef(name, version, contextAlbumName, contextAlbumVersion);
515     }
516
517     /**
518      * {@inheritDoc}.
519      */
520     @Override
521     public ApexApiResult listTaskContextRef(final String name, final String version, final String contextAlbumName,
522             final String contextAlbumVersion) {
523         return taskFacade.listTaskContextRef(name, version, contextAlbumName, contextAlbumVersion);
524     }
525
526     /**
527      * {@inheritDoc}.
528      */
529     @Override
530     public ApexApiResult deleteTaskContextRef(final String name, final String version, final String contextAlbumName,
531             final String contextAlbumVersion) {
532         return taskFacade.deleteTaskContextRef(name, version, contextAlbumName, contextAlbumVersion);
533     }
534
535     /**
536      * {@inheritDoc}.
537      */
538     @Override
539     public ApexApiResult createPolicy(final String name, final String version, final String template,
540             final String firstState, final String uuid, final String description) {
541         return policyFacade.createPolicy(name, version, template, firstState, uuid, description);
542     }
543
544     /**
545      * {@inheritDoc}.
546      */
547     @Override
548     public ApexApiResult updatePolicy(final String name, final String version, final String template,
549             final String firstState, final String uuid, final String description) {
550         return policyFacade.updatePolicy(name, version, template, firstState, uuid, description);
551     }
552
553     /**
554      * {@inheritDoc}.
555      */
556     @Override
557     public ApexApiResult listPolicy(final String name, final String version) {
558         return policyFacade.listPolicy(name, version);
559     }
560
561     /**
562      * {@inheritDoc}.
563      */
564     @Override
565     public ApexApiResult deletePolicy(final String name, final String version) {
566         return policyFacade.deletePolicy(name, version);
567     }
568
569     /**
570      * {@inheritDoc}.
571      */
572     @Override
573     public ApexApiResult validatePolicy(final String name, final String version) {
574         return policyFacade.validatePolicy(name, version);
575     }
576
577     /**
578      * {@inheritDoc}.
579      */
580     @Override
581     public ApexApiResult createPolicyState(final String name, final String version, final String stateName,
582             final String triggerName, final String triggerVersion, final String defaultTaskName,
583             final String defaltTaskVersion) {
584         return policyFacade.createPolicyState(name, version, stateName, triggerName, triggerVersion, defaultTaskName,
585                 defaltTaskVersion);
586     }
587
588     /**
589      * {@inheritDoc}.
590      */
591     @Override
592     public ApexApiResult updatePolicyState(final String name, final String version, final String stateName,
593             final String triggerName, final String triggerVersion, final String defaultTaskName,
594             final String defaltTaskVersion) {
595         return policyFacade.updatePolicyState(name, version, stateName, triggerName, triggerVersion, defaultTaskName,
596                 defaltTaskVersion);
597     }
598
599     /**
600      * {@inheritDoc}.
601      */
602     @Override
603     public ApexApiResult listPolicyState(final String name, final String version, final String stateName) {
604         return policyFacade.listPolicyState(name, version, stateName);
605     }
606
607     /**
608      * {@inheritDoc}.
609      */
610     @Override
611     public ApexApiResult deletePolicyState(final String name, final String version, final String stateName) {
612         return policyFacade.deletePolicyState(name, version, stateName);
613     }
614
615     /**
616      * {@inheritDoc}.
617      */
618     @Override
619     public ApexApiResult createPolicyStateTaskSelectionLogic(final String name, final String version,
620             final String stateName, final String logicFlavour, final String logic) {
621         return policyFacade.createPolicyStateTaskSelectionLogic(name, version, stateName, logicFlavour, logic);
622     }
623
624     /**
625      * {@inheritDoc}.
626      */
627     @Override
628     public ApexApiResult updatePolicyStateTaskSelectionLogic(final String name, final String version,
629             final String stateName, final String logicFlavour, final String logic) {
630         return policyFacade.updatePolicyStateTaskSelectionLogic(name, version, stateName, logicFlavour, logic);
631     }
632
633     /**
634      * {@inheritDoc}.
635      */
636     @Override
637     public ApexApiResult listPolicyStateTaskSelectionLogic(final String name, final String version,
638             final String stateName) {
639         return policyFacade.listPolicyStateTaskSelectionLogic(name, version, stateName);
640     }
641
642     /**
643      * {@inheritDoc}.
644      */
645     @Override
646     public ApexApiResult deletePolicyStateTaskSelectionLogic(final String name, final String version,
647             final String stateName) {
648         return policyFacade.deletePolicyStateTaskSelectionLogic(name, version, stateName);
649     }
650
651     /**
652      * {@inheritDoc}.
653      */
654     @Override
655     public ApexApiResult createPolicyStateOutput(final String name, final String version, final String stateName,
656             final String outputName, final String eventName, final String eventVersion, final String nextState) {
657         return policyFacade.createPolicyStateOutput(name, version, stateName, outputName, eventName, eventVersion,
658                 nextState);
659     }
660
661     /**
662      * {@inheritDoc}.
663      */
664     @Override
665     public ApexApiResult listPolicyStateOutput(final String name, final String version, final String stateName,
666             final String outputName) {
667         return policyFacade.listPolicyStateOutput(name, version, stateName, outputName);
668     }
669
670     /**
671      * {@inheritDoc}.
672      */
673     @Override
674     public ApexApiResult deletePolicyStateOutput(final String name, final String version, final String stateName,
675             final String outputName) {
676         return policyFacade.deletePolicyStateOutput(name, version, stateName, outputName);
677     }
678
679     /**
680      * {@inheritDoc}.
681      */
682     @Override
683     public ApexApiResult createPolicyStateFinalizerLogic(final String name, final String version,
684             final String stateName, final String finalizerLogicName, final String logicFlavour, final String logic) {
685         return policyFacade.createPolicyStateFinalizerLogic(name, version, stateName, finalizerLogicName, logicFlavour,
686                 logic);
687     }
688
689     /**
690      * {@inheritDoc}.
691      */
692     @Override
693     public ApexApiResult updatePolicyStateFinalizerLogic(final String name, final String version,
694             final String stateName, final String finalizerLogicName, final String logicFlavour, final String logic) {
695         return policyFacade.updatePolicyStateFinalizerLogic(name, version, stateName, finalizerLogicName, logicFlavour,
696                 logic);
697     }
698
699     /**
700      * {@inheritDoc}.
701      */
702     @Override
703     public ApexApiResult listPolicyStateFinalizerLogic(final String name, final String version, final String stateName,
704             final String finalizerLogicName) {
705         return policyFacade.listPolicyStateFinalizerLogic(name, version, stateName, finalizerLogicName);
706     }
707
708     /**
709      * {@inheritDoc}.
710      */
711     @Override
712     public ApexApiResult deletePolicyStateFinalizerLogic(final String name, final String version,
713             final String stateName, final String finalizerLogicName) {
714         return policyFacade.deletePolicyStateFinalizerLogic(name, version, stateName, finalizerLogicName);
715     }
716
717     /**
718      * {@inheritDoc}.
719      */
720     @Override
721     // CHECKSTYLE:OFF: checkstyle:parameterNumber
722     public ApexApiResult createPolicyStateTaskRef(final String name, final String version, final String stateName,
723             final String taskLocalName, final String taskName, final String taskVersion, final String outputType,
724             final String outputName) {
725         return policyFacade.createPolicyStateTaskRef(new CreatePolicyStateTaskRefBuilder().setName(name)
726                 .setVersion(version).setStateName(stateName).setTaskLocalName(taskLocalName).setTaskName(taskName)
727                 .setTaskVersion(taskVersion).setOutputType(outputType).setOutputName(outputName));
728     }
729     // CHECKSTYLE:ON: checkstyle:parameterNumber
730
731     /**
732      * {@inheritDoc}.
733      */
734     @Override
735     public ApexApiResult listPolicyStateTaskRef(final String name, final String version, final String stateName,
736             final String taskName, final String taskVersion) {
737         return policyFacade.listPolicyStateTaskRef(name, version, stateName, taskName, taskVersion);
738     }
739
740     /**
741      * {@inheritDoc}.
742      */
743     @Override
744     public ApexApiResult deletePolicyStateTaskRef(final String name, final String version, final String stateName,
745             final String taskName, final String taskVersion) {
746         return policyFacade.deletePolicyStateTaskRef(name, version, stateName, taskName, taskVersion);
747     }
748
749     /**
750      * {@inheritDoc}.
751      */
752     @Override
753     public ApexApiResult createPolicyStateContextRef(final String name, final String version, final String stateName,
754             final String contextAlbumName, final String contextAlbumVersion) {
755         return policyFacade.createPolicyStateContextRef(name, version, stateName, contextAlbumName,
756                 contextAlbumVersion);
757     }
758
759     /**
760      * {@inheritDoc}.
761      */
762     @Override
763     public ApexApiResult listPolicyStateContextRef(final String name, final String version, final String stateName,
764             final String contextAlbumName, final String contextAlbumVersion) {
765         return policyFacade.listPolicyStateContextRef(name, version, stateName, contextAlbumName, contextAlbumVersion);
766     }
767
768     /**
769      * {@inheritDoc}.
770      */
771     @Override
772     public ApexApiResult deletePolicyStateContextRef(final String name, final String version, final String stateName,
773             final String contextAlbumName, final String contextAlbumVersion) {
774         return policyFacade.deletePolicyStateContextRef(name, version, stateName, contextAlbumName,
775                 contextAlbumVersion);
776     }
777
778     /**
779      * {@inheritDoc}.
780      */
781     @Override
782     public ApexApiResult loadFromString(final String modelString) {
783         return modelHandlerFacade.loadFromString(modelString);
784     }
785
786     /**
787      * {@inheritDoc}.
788      */
789     @Override
790     // CHECKSTYLE:OFF: checkstyle:HiddenField
791     public ApexApiResult loadFromFile(final String fileName) {
792         this.fileName = fileName;
793         return modelHandlerFacade.loadFromFile(fileName);
794     }
795     // CHECKSTYLE:ON: checkstyle:HiddenField
796
797     /**
798      * {@inheritDoc}.
799      */
800     @Override
801     public ApexApiResult saveToFile(final String saveFileName, final boolean xmlFlag) {
802         if (saveFileName == null) {
803             return modelHandlerFacade.saveToFile(fileName, xmlFlag);
804         } else {
805             return modelHandlerFacade.saveToFile(saveFileName, xmlFlag);
806         }
807     }
808
809     /**
810      * {@inheritDoc}.
811      */
812     @Override
813     public ApexApiResult loadFromDatabase(final String modelName, final String modelVersion,
814             final DaoParameters daoParameters) {
815         return modelHandlerFacade.loadFromDatabase(modelName, modelVersion, daoParameters);
816     }
817
818     /**
819      * {@inheritDoc}.
820      */
821     @Override
822     public ApexApiResult saveToDatabase(final DaoParameters daoParameters) {
823         return modelHandlerFacade.saveToDatabase(daoParameters);
824     }
825
826     /**
827      * {@inheritDoc}.
828      */
829     @Override
830     public ApexApiResult readFromUrl(final String urlString) {
831         return modelHandlerFacade.readFromUrl(urlString);
832     }
833
834     /**
835      * {@inheritDoc}.
836      */
837     @Override
838     public ApexApiResult writeToUrl(final String urlString, final boolean xmlFlag) {
839         return modelHandlerFacade.writeToUrl(urlString, xmlFlag);
840     }
841
842     /**
843      * {@inheritDoc}.
844      */
845     @Override
846     public ApexApiResult analyse() {
847         return modelHandlerFacade.analyse();
848     }
849
850     /**
851      * {@inheritDoc}.
852      */
853     @Override
854     public ApexApiResult validate() {
855         return modelHandlerFacade.validate();
856     }
857
858     /**
859      * {@inheritDoc}.
860      */
861     @Override
862     public ApexApiResult compare(final String otherModelFileName, final boolean diffsOnly, final boolean keysOnly) {
863         return modelHandlerFacade.compare(otherModelFileName, diffsOnly, keysOnly);
864     }
865
866     /**
867      * {@inheritDoc}.
868      */
869     @Override
870     public ApexApiResult compareWithString(final String otherModelString, final boolean diffsOnly,
871             final boolean keysOnly) {
872         return modelHandlerFacade.compareWithString(otherModelString, diffsOnly, keysOnly);
873     }
874
875     /**
876      * {@inheritDoc}.
877      */
878     @Override
879     public ApexApiResult split(final String targetModelFileName, final String splitOutPolicies) {
880         return modelHandlerFacade.split(targetModelFileName, splitOutPolicies);
881     }
882
883     /**
884      * {@inheritDoc}.
885      */
886     @Override
887     public ApexApiResult split(final String splitOutPolicies) {
888         return modelHandlerFacade.split(splitOutPolicies);
889     }
890
891     /**
892      * {@inheritDoc}.
893      */
894     @Override
895     public ApexApiResult merge(final String mergeInModelFileName, final boolean keepOriginal) {
896         return modelHandlerFacade.merge(mergeInModelFileName, keepOriginal);
897     }
898
899     /**
900      * {@inheritDoc}.
901      */
902     @Override
903     public ApexApiResult mergeWithString(final String otherModelString, final boolean keepOriginal) {
904         return modelHandlerFacade.mergeWithString(otherModelString, keepOriginal);
905     }
906
907     /**
908      * {@inheritDoc}.
909      */
910     @Override
911     public AxPolicyModel getPolicyModel() {
912         return policyModel;
913     }
914
915     /**
916      * {@inheritDoc}.
917      */
918     @Override
919     public void setPolicyModel(final AxPolicyModel policyModel) {
920         this.policyModel = policyModel;
921     }
922
923     /**
924      * {@inheritDoc}.
925      */
926     @Override
927     public AxPolicyModel build() {
928         return policyModel;
929     }
930
931 }