Make swagger generators configurable
[netconf.git] / restconf / sal-rest-docgen / src / main / java / org / opendaylight / netconf / sal / rest / doc / impl / MountPointSwaggerGeneratorRFC8040.java
1 /*
2  * Copyright (c) 2018 Inocybe Technologies and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.netconf.sal.rest.doc.impl;
9
10 import java.util.Optional;
11 import org.opendaylight.mdsal.dom.api.DOMMountPointService;
12 import org.opendaylight.mdsal.dom.api.DOMSchemaService;
13 import org.opendaylight.netconf.sal.rest.doc.mountpoints.MountPointSwagger;
14
15 /**
16  * MountPoint generator implementation for RFC 8040.
17  *
18  * @author Thomas Pantelis
19  */
20 public class MountPointSwaggerGeneratorRFC8040 extends BaseYangSwaggerGeneratorRFC8040 implements AutoCloseable {
21     private final MountPointSwagger mountPointSwagger;
22
23     public MountPointSwaggerGeneratorRFC8040(final DOMSchemaService schemaService,
24             final DOMMountPointService mountService) {
25         super(Optional.of(schemaService));
26         mountPointSwagger = new MountPointSwagger(schemaService, mountService, this);
27         mountPointSwagger.init();
28     }
29
30     public MountPointSwaggerGeneratorRFC8040(final DOMSchemaService schemaService,
31             final DOMMountPointService mountService, final String basePath) {
32         super(Optional.of(schemaService), basePath);
33         mountPointSwagger = new MountPointSwagger(schemaService, mountService, this);
34         mountPointSwagger.init();
35     }
36
37     public MountPointSwagger getMountPointSwagger() {
38         return mountPointSwagger;
39     }
40
41     @Override
42     public void close() {
43         mountPointSwagger.close();
44     }
45 }