Code changes to support Docker Compose file for tr069-adapterVES and nginx support.
Issue-Id: OAM-128
Signed-off-by: gmittal <gaurav.mittal@commscope.com>
Change-Id: I8bb509928abe9b20ed83739c9853d79baf45f4ee
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
+oam-tr-069-adapter Apache-2.0
+
+This oam-tr-069-adapter software is distributed by CommScope Inc.
+
+Unless otherwise specified, all software contained herein is licensed
+under the Apache License, Version 2.0 (the "Software License");
+you may not use this software except in compliance with the Software
+License. You may obtain a copy of the Software License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the Software License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the Software License for the specific language governing permissions
+and limitations under the Software License.
+
+Unless otherwise specified, all documentation contained herein is licensed
+under the Creative Commons License, Attribution 4.0 Intl. (the
+"Documentation License"); you may not use this documentation except in
+compliance with the Documentation License. You may obtain a copy of the
+Documentation License at
+
+https://creativecommons.org/licenses/by/4.0/
+
+Unless required by applicable law or agreed to in writing, documentation
+distributed under the Documentation License is distributed on an "AS IS"
+BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+implied. See the Documentation License for the specific language governing
+permissions and limitations under the Documentation License.
+
+
+This tr-069-adapter software repository includes files that are Copyright 2014
+Cisco Systems, Inc. and distributed under the Eclipse Public License v1.0.
+You may not use this file except in compliance with the License. You may obtain a
+copy of the License at https://www.eclipse.org/legal/epl-v10.html.
+This software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+OF ANY KIND, either express or implied. See the License for the specific language
+governing permissions and limitations under the License.
+
+This tr-069-adapter software repository includes files that are
+Copyright 2010-2019 IETF Trust and distributed under the simplified BSD
+License set forth in Section 4.c of the IETF Trust's Legal Provisions Relating
+to IETF Documents (http://trustee.ietf.org/license-info). This software is
+distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+either express or implied. See the License for the specific language
+governing permissions and limitations under the License.
+
+This tr-069-adapter software repository includes files that are Copyright 2019
+O-RAN Alliance and distributed under BSD-3-Clause License. This software is
+distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+either express or implied. See the License for the specific language
+governing permissions and limitations under the License.
+
+This tr-069-adapter software repository includes files that are Copyright (C) 2002-2020 Igor Sysoev,
+Copyright (C) 2011-2020 Nginx, Inc. It is licensed under the 2-clause BSD-like license. This software is
+distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+either express or implied. See the License for the specific language
+governing permissions and limitations under the License.
+
+This tr-069-adapter software repository includes files that are Copyright (C) 1991, 1999
+Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+Everyone is permitted to copy and distribute verbatim copies of this license document,
+but changing it is not allowed. https://github.com/mariadb-corporation/mariadb-connector-j/blob/master/LICENSE
+
+This tr-069-adapter software repository includes files that are Copyright (c) 2007 Mockito contributors
+under MIT License(https://github.com/mockito/mockito/wiki/License). THE SOFTWARE IS PROVIDED
+"AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
+OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+This tr-069-adapter software repository includes files that are Copyright (c) 2007,
+Eclipse Foundation, Inc. and its licensors.(https://www.eclipse.org/org/documents/edl-v10.php)
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
+OR IMPLIED WARRANTIES, INCLUDING, BUTNOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS FOR A PARTICULARPURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+CONTRIBUTORS BE LIABLEFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING,BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS;OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+IN CONTRACT,STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+This tr-069-adapter software repository includes files that are Copyright (c) SAX LICENSE
+(https://saas.solenovo.fi/solemove/lics/LICENSE-SAX.html) This module, both source code and
+documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org
+for further information.
+
+This tr-069-adapter software repository includes files that are Copyright (C) 1989, 1991
+Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+Everyone is permitted to copy and distribute verbatim copies of this license document,
+but changing it is not allowed. this is under The GNU General Public License (GPL)
+https://openjdk.java.net/legal/gplv2+ce.html
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
\ No newline at end of file
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- <parent>\r
- <groupId>org.commscope.tr069adapter.acs</groupId>\r
- <artifactId>acs</artifactId>\r
- <version>1.0.0</version>\r
- </parent>\r
- <modelVersion>4.0.0</modelVersion>\r
- <groupId>org.commscope.tr069adapter.acs.booter</groupId>\r
- <artifactId>application-booter</artifactId>\r
- <name>Application Booter</name>\r
- <licenses>\r
- <license>\r
- <name>The Apache Software License, Version 2.0</name>\r
- <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>\r
- </license>\r
- </licenses>\r
- <repositories>\r
- <repository>\r
- <id>onap-releases</id>\r
- <name>onap-releases</name>\r
- <url>https://nexus.onap.org/content/repositories/releases/</url>\r
- </repository>\r
- </repositories>\r
- <properties>\r
- <docker.image.name>tr069adapter-acs</docker.image.name>\r
- </properties>\r
- <dependencies>\r
- <dependency>\r
- <groupId>org.springframework</groupId>\r
- <artifactId>spring-jms</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>javax.xml.soap</groupId>\r
- <artifactId>javax.xml.soap-api</artifactId>\r
- <version>1.4.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-web</artifactId>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-logging</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-log4j2</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.lmax</groupId>\r
- <artifactId>disruptor</artifactId>\r
- <version>3.4.2</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-activemq</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.apache.activemq</groupId>\r
- <artifactId>activemq-broker</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.fasterxml.jackson.core</groupId>\r
- <artifactId>jackson-databind</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.common</groupId>\r
- <artifactId>acs-common</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.common</groupId>\r
- <artifactId>common</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.cpe</groupId>\r
- <artifactId>cpe</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.requestprocessor</groupId>\r
- <artifactId>requestprocessor</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.nbi</groupId>\r
- <artifactId>acsnbi</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.google.guava</groupId>\r
- <artifactId>guava</artifactId>\r
- <version>23.6-jre</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.apache.httpcomponents</groupId>\r
- <artifactId>httpcore</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>sax</groupId>\r
- <artifactId>sax</artifactId>\r
- <version>2.0.1</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.mockito</groupId>\r
- <artifactId>mockito-core</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-test</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit-dep</artifactId>\r
- <version>4.11</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.h2database</groupId>\r
- <artifactId>h2</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- </dependencies>\r
- <build>\r
- <plugins>\r
- <plugin>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-maven-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>net.revelc.code.formatter</groupId>\r
- <artifactId>formatter-maven-plugin</artifactId>\r
- <version>${formatter-maven-plugin.version}</version>\r
- <configuration>\r
- <configFile>${project.parent.parent.basedir}/eclipse-formatter.xml</configFile>\r
- </configuration>\r
- <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format\r
- spotless:apply process-sources -->\r
- </plugin>\r
- <plugin>\r
- <groupId>com.diffplug.spotless</groupId>\r
- <artifactId>spotless-maven-plugin</artifactId>\r
- <version>${spotless-maven-plugin.version}</version>\r
- <configuration>\r
- <java>\r
- <removeUnusedImports />\r
- <importOrder>\r
- <order>com,java,javax,org</order>\r
- </importOrder>\r
- </java>\r
- </configuration>\r
- <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use\r
- mvn spotless:apply to rewrite source files use mvn spotless:check to validate\r
- source files -->\r
- </plugin>\r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-surefire-plugin</artifactId>\r
- <configuration>\r
- <skipTests>false</skipTests>\r
- </configuration>\r
- </plugin>\r
- <plugin>\r
- <artifactId>maven-failsafe-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>io.fabric8</groupId>\r
- <artifactId>docker-maven-plugin</artifactId>\r
- <version>${docker-maven-plugin}</version>\r
- <inherited>false</inherited>\r
- <executions>\r
- <execution>\r
- <id>generate-policy-agent-image</id>\r
- <phase>package</phase>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>save</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${build.version}</name>\r
- <build>\r
- <cleanup>try</cleanup>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>${project.version}</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- <execution>\r
- <id>push-policy-agent-image</id>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>push</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${project.version}</name>\r
- <build>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>latest</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- </plugin>\r
- <!-- support sonar in multi-module project -->\r
- <plugin>\r
- <groupId>org.sonarsource.scanner.maven</groupId>\r
- <artifactId>sonar-maven-plugin</artifactId>\r
- <version>${sonar-maven-plugin.version}</version>\r
- </plugin>\r
- </plugins>\r
- </build>\r
- <issueManagement>\r
- <system>JIRA</system>\r
- <url>https://jira.o-ran-sc.org/</url>\r
- </issueManagement>\r
-</project>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.commscope.tr069adapter.acs</groupId>
+ <artifactId>acs</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.commscope.tr069adapter.acs.booter</groupId>
+ <artifactId>application-booter</artifactId>
+ <name>Application Booter</name>
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+ <repositories>
+ <repository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ </repository>
+ </repositories>
+ <properties>
+ <docker.image.name>o-ran-sc/tr069adapter-acs</docker.image.name>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-jms</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.soap</groupId>
+ <artifactId>javax.xml.soap-api</artifactId>
+ <version>1.4.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-log4j2</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.lmax</groupId>
+ <artifactId>disruptor</artifactId>
+ <version>3.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-activemq</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-broker</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.common</groupId>
+ <artifactId>acs-common</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.common</groupId>
+ <artifactId>common</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.cpe</groupId>
+ <artifactId>cpe</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.requestprocessor</groupId>
+ <artifactId>requestprocessor</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.nbi</groupId>
+ <artifactId>acsnbi</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>23.6-jre</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.httpcomponents</groupId>
+ <artifactId>httpcore</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>sax</groupId>
+ <artifactId>sax</artifactId>
+ <version>2.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>net.revelc.code.formatter</groupId>
+ <artifactId>formatter-maven-plugin</artifactId>
+ <version>${formatter-maven-plugin.version}</version>
+ <configuration>
+ <configFile>${project.parent.parent.basedir}/eclipse-formatter.xml</configFile>
+ </configuration>
+ <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
+ spotless:apply process-sources -->
+ </plugin>
+ <plugin>
+ <groupId>com.diffplug.spotless</groupId>
+ <artifactId>spotless-maven-plugin</artifactId>
+ <version>${spotless-maven-plugin.version}</version>
+ <configuration>
+ <java>
+ <removeUnusedImports />
+ <importOrder>
+ <order>com,java,javax,org</order>
+ </importOrder>
+ </java>
+ </configuration>
+ <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
+ mvn spotless:apply to rewrite source files use mvn spotless:check to validate
+ source files -->
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skipTests>false</skipTests>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>${docker-maven-plugin}</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>generate-policy-agent-image</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>save</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${build.version}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>${project.version}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ <execution>
+ <id>push-policy-agent-image</id>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${project.version}</name>
+ <build>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>latest</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- support sonar in multi-module project -->
+ <plugin>
+ <groupId>org.sonarsource.scanner.maven</groupId>
+ <artifactId>sonar-maven-plugin</artifactId>
+ <version>${sonar-maven-plugin.version}</version>
+ </plugin>
+ </plugins>
+ </build>
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://jira.o-ran-sc.org/</url>
+ </issueManagement>
+</project>
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- \r
- <modelVersion>4.0.0</modelVersion>\r
- <groupId>org.commscope.tr069adapter.acs.nbi</groupId>\r
- <artifactId>acsnbi</artifactId>\r
- <name>acs nbi service</name>\r
- \r
- <parent>\r
- <groupId>org.commscope.tr069adapter.acs</groupId>\r
- <artifactId>acs</artifactId>\r
- <version>1.0.0</version>\r
- </parent>\r
- \r
- <dependencies>\r
- <dependency>\r
- <groupId>org.springframework</groupId>\r
- <artifactId>spring-jms</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-web</artifactId>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-logging</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-log4j2</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.lmax</groupId>\r
- <artifactId>disruptor</artifactId>\r
- <version>3.4.2</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.apache.activemq</groupId>\r
- <artifactId>activemq-broker</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.fasterxml.jackson.core</groupId>\r
- <artifactId>jackson-databind</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>javax.ws.rs</groupId>\r
- <artifactId>javax.ws.rs-api</artifactId>\r
- <version>2.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.common</groupId>\r
- <artifactId>common</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.common</groupId>\r
- <artifactId>acs-common</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.requestprocessor</groupId>\r
- <artifactId>requestprocessor</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- </dependencies>\r
- <build>\r
- <plugins>\r
- <plugin>\r
- <groupId>net.revelc.code.formatter</groupId>\r
- <artifactId>formatter-maven-plugin</artifactId>\r
- <version>${formatter-maven-plugin.version}</version>\r
- <configuration>\r
- <configFile>${project.parent.parent.basedir}/eclipse-formatter.xml</configFile>\r
- </configuration>\r
- <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format\r
- spotless:apply process-sources -->\r
- </plugin>\r
- <plugin>\r
- <groupId>com.diffplug.spotless</groupId>\r
- <artifactId>spotless-maven-plugin</artifactId>\r
- <version>${spotless-maven-plugin.version}</version>\r
- <configuration>\r
- <java>\r
- <removeUnusedImports />\r
- <importOrder>\r
- <order>com,java,javax,org</order>\r
- </importOrder>\r
- </java>\r
- </configuration>\r
- <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use\r
- mvn spotless:apply to rewrite source files use mvn spotless:check to validate\r
- source files -->\r
- </plugin>\r
- <!-- support sonar in multi-module project -->\r
- <plugin>\r
- <groupId>org.sonarsource.scanner.maven</groupId>\r
- <artifactId>sonar-maven-plugin</artifactId>\r
- <version>${sonar-maven-plugin.version}</version>\r
- </plugin>\r
- </plugins>\r
- </build>\r
- <issueManagement>\r
- <system>JIRA</system>\r
- <url>https://jira.o-ran-sc.org/</url>\r
- </issueManagement>\r
-</project>
\ No newline at end of file
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.commscope.tr069adapter.acs.nbi</groupId>
+ <artifactId>acsnbi</artifactId>
+ <name>acs nbi service</name>
+
+ <parent>
+ <groupId>org.commscope.tr069adapter.acs</groupId>
+ <artifactId>acs</artifactId>
+ <version>1.0.0</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-jms</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-log4j2</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.lmax</groupId>
+ <artifactId>disruptor</artifactId>
+ <version>3.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.activemq</groupId>
+ <artifactId>activemq-broker</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.ws.rs</groupId>
+ <artifactId>javax.ws.rs-api</artifactId>
+ <version>2.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.common</groupId>
+ <artifactId>common</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.common</groupId>
+ <artifactId>acs-common</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.requestprocessor</groupId>
+ <artifactId>requestprocessor</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>net.revelc.code.formatter</groupId>
+ <artifactId>formatter-maven-plugin</artifactId>
+ <version>${formatter-maven-plugin.version}</version>
+ <configuration>
+ <configFile>${project.parent.parent.basedir}/eclipse-formatter.xml</configFile>
+ </configuration>
+ <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
+ spotless:apply process-sources -->
+ </plugin>
+ <plugin>
+ <groupId>com.diffplug.spotless</groupId>
+ <artifactId>spotless-maven-plugin</artifactId>
+ <version>${spotless-maven-plugin.version}</version>
+ <configuration>
+ <java>
+ <removeUnusedImports />
+ <importOrder>
+ <order>com,java,javax,org</order>
+ </importOrder>
+ </java>
+ </configuration>
+ <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
+ mvn spotless:apply to rewrite source files use mvn spotless:check to validate
+ source files -->
+ </plugin>
+ <!-- support sonar in multi-module project -->
+ <plugin>
+ <groupId>org.sonarsource.scanner.maven</groupId>
+ <artifactId>sonar-maven-plugin</artifactId>
+ <version>${sonar-maven-plugin.version}</version>
+ </plugin>
+ </plugins>
+ </build>
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://jira.o-ran-sc.org/</url>
+ </issueManagement>
+</project>
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- <modelVersion>4.0.0</modelVersion>\r
- <parent>\r
- <groupId>org.commscope.tr069adapter</groupId>\r
- <artifactId>tr069adapter</artifactId>\r
- <version>1.0.0</version>\r
- </parent>\r
- <groupId>org.commscope.tr069adapter.config</groupId>\r
- <artifactId>config-data</artifactId>\r
- <name>config-data</name>\r
- <description>Configuration data import project for Spring Boot</description>\r
- <licenses>\r
- <license>\r
- <name>The Apache Software License, Version 2.0</name>\r
- <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>\r
- </license>\r
- </licenses>\r
- <repositories>\r
- <repository>\r
- <id>onap-releases</id>\r
- <name>onap-releases</name>\r
- <url>https://nexus.onap.org/content/repositories/releases/</url>\r
- </repository>\r
- </repositories>\r
- <properties>\r
- <docker.image.name>tr069adapter-acs-initialpnpdb</docker.image.name>\r
- </properties>\r
- <dependencies>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-data-jpa</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-web</artifactId>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-logging</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-log4j2</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.mariadb.jdbc</groupId>\r
- <artifactId>mariadb-java-client</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-test</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.h2database</groupId>\r
- <artifactId>h2</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit-dep</artifactId>\r
- <version>4.11</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-test</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.common</groupId>\r
- <artifactId>acs-common</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- </dependencies>\r
- <build>\r
- <plugins>\r
- <plugin>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-maven-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>net.revelc.code.formatter</groupId>\r
- <artifactId>formatter-maven-plugin</artifactId>\r
- <version>${formatter-maven-plugin.version}</version>\r
- <configuration>\r
- <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>\r
- </configuration>\r
- <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format\r
- spotless:apply process-sources -->\r
- </plugin>\r
- <plugin>\r
- <groupId>com.diffplug.spotless</groupId>\r
- <artifactId>spotless-maven-plugin</artifactId>\r
- <version>${spotless-maven-plugin.version}</version>\r
- <configuration>\r
- <java>\r
- <removeUnusedImports />\r
- <importOrder>\r
- <order>com,java,javax,org</order>\r
- </importOrder>\r
- </java>\r
- </configuration>\r
- <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use\r
- mvn spotless:apply to rewrite source files use mvn spotless:check to validate\r
- source files -->\r
- </plugin>\r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-surefire-plugin</artifactId>\r
- <configuration>\r
- <skipTests>false</skipTests>\r
- </configuration>\r
- </plugin>\r
- <plugin>\r
- <artifactId>maven-failsafe-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>io.fabric8</groupId>\r
- <artifactId>docker-maven-plugin</artifactId>\r
- <version>${docker-maven-plugin}</version>\r
- <inherited>false</inherited>\r
- <executions>\r
- <execution>\r
- <id>generate-policy-agent-image</id>\r
- <phase>package</phase>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>save</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${build.version}</name>\r
- <build>\r
- <cleanup>try</cleanup>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>${project.version}</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- <execution>\r
- <id>push-policy-agent-image</id>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>push</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${project.version}</name>\r
- <build>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>latest</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- </plugin>\r
- <!-- support sonar in multi-module project -->\r
- <plugin>\r
- <groupId>org.sonarsource.scanner.maven</groupId>\r
- <artifactId>sonar-maven-plugin</artifactId>\r
- <version>${sonar-maven-plugin.version}</version>\r
- </plugin>\r
- </plugins>\r
- </build>\r
- <issueManagement>\r
- <system>JIRA</system>\r
- <url>https://jira.o-ran-sc.org/</url>\r
- </issueManagement>\r
-</project>\r
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.commscope.tr069adapter</groupId>
+ <artifactId>tr069adapter</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <groupId>org.commscope.tr069adapter.config</groupId>
+ <artifactId>config-data</artifactId>
+ <name>config-data</name>
+ <description>Configuration data import project for Spring Boot</description>
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+ <repositories>
+ <repository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ </repository>
+ </repositories>
+ <properties>
+ <docker.image.name>o-ran-sc/tr069adapter-acs-initialpnpdb</docker.image.name>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-data-jpa</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-log4j2</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.mariadb.jdbc</groupId>
+ <artifactId>mariadb-java-client</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.11</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.common</groupId>
+ <artifactId>acs-common</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>net.revelc.code.formatter</groupId>
+ <artifactId>formatter-maven-plugin</artifactId>
+ <version>${formatter-maven-plugin.version}</version>
+ <configuration>
+ <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>
+ </configuration>
+ <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
+ spotless:apply process-sources -->
+ </plugin>
+ <plugin>
+ <groupId>com.diffplug.spotless</groupId>
+ <artifactId>spotless-maven-plugin</artifactId>
+ <version>${spotless-maven-plugin.version}</version>
+ <configuration>
+ <java>
+ <removeUnusedImports />
+ <importOrder>
+ <order>com,java,javax,org</order>
+ </importOrder>
+ </java>
+ </configuration>
+ <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
+ mvn spotless:apply to rewrite source files use mvn spotless:check to validate
+ source files -->
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skipTests>false</skipTests>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>${docker-maven-plugin}</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>generate-policy-agent-image</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>save</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${build.version}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>${project.version}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ <execution>
+ <id>push-policy-agent-image</id>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${project.version}</name>
+ <build>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>latest</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- support sonar in multi-module project -->
+ <plugin>
+ <groupId>org.sonarsource.scanner.maven</groupId>
+ <artifactId>sonar-maven-plugin</artifactId>
+ <version>${sonar-maven-plugin.version}</version>
+ </plugin>
+ </plugins>
+ </build>
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://jira.o-ran-sc.org/</url>
+ </issueManagement>
+</project>
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- <parent>\r
- <groupId>org.commscope.tr069adapter</groupId>\r
- <artifactId>tr069adapter</artifactId>\r
- <version>1.0.0</version>\r
- </parent>\r
- <modelVersion>4.0.0</modelVersion>\r
- <groupId>org.commscope.tr069adapter.db</groupId>\r
- <artifactId>maria-db</artifactId>\r
- <name>maria-db</name>\r
- <url>http://maven.apache.org</url>\r
- <properties>\r
- <docker.image.name>tr069adapter-mariadb</docker.image.name>\r
- </properties>\r
- <build>\r
- <plugins>\r
- <plugin>\r
- <groupId>io.fabric8</groupId>\r
- <artifactId>docker-maven-plugin</artifactId>\r
- <version>${docker-maven-plugin}</version>\r
- <inherited>false</inherited>\r
- <executions>\r
- <execution>\r
- <id>generate-policy-agent-image</id>\r
- <phase>package</phase>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>save</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${build.version}</name>\r
- <build>\r
- <cleanup>try</cleanup>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <tags>\r
- <tag>${project.version}</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- <execution>\r
- <id>push-policy-agent-image</id>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>push</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${project.version}</name>\r
- <build>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>latest</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- </plugin>\r
- </plugins>\r
- </build>\r
-</project>\r
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.commscope.tr069adapter</groupId>
+ <artifactId>tr069adapter</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.commscope.tr069adapter.db</groupId>
+ <artifactId>maria-db</artifactId>
+ <name>maria-db</name>
+ <url>http://maven.apache.org</url>
+ <properties>
+ <docker.image.name>o-ran-sc/tr069adapter-mariadb</docker.image.name>
+ </properties>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>${docker-maven-plugin}</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>generate-policy-agent-image</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>save</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${build.version}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <tags>
+ <tag>${project.version}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ <execution>
+ <id>push-policy-agent-image</id>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${project.version}</name>
+ <build>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>latest</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
--- /dev/null
+# O-RAN-SC docker-compose files
+
+The tr069adapter-install.yaml and tr069adapter-install.env file will create an entire tr069-adapter system with one command:
+docker-compose -f tr069adapter-install.yaml --env-file tr069adapter-install.env up -d
+
+Howto:
+cd tr069-adapter/
+docker-compose -f tr069adapter-install.yaml --env-file tr069adapter-install.env up -d
+
+The scripts in data/ will import the test data in the running system.
+
+Run command:
+If SSL is not enabled then execute
+cd data/
+./importConfig.sh
+
+If SSL is enabled then execute
+cd data/
+./importConfig.sh SSL
+
+Open link:
+http://localhost:1111/getConfig/0005b9423910
+or
+https://localhost:1111/getConfig/0005b9423910
+
+All the imported data is shown on the web page
+
+## License
+
+O-RAN-SC : tr-069-adapter
+Copyright (C) 2020 CommScope Inc Intellectual Property.
+This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
+Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
+may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+either express or implied. See the License for the specific language governing permissions and
+limitations under the License.
+
--- /dev/null
+#!/bin/bash
+# ============LICENSE_START========================================================================
+# O-RAN-SC : tr-069-adapter
+# =================================================================================================
+# Copyright (C) 2020 CommScope Inc Intellectual Property.
+# =================================================================================================
+# This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
+# Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
+# may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+# either express or implied. See the License for the specific language governing permissions and
+# limitations under the License.
+# ===============LICENSE_END=======================================================================
+
+# Run command:
+# If SSL is enabled then execute : ./importConfig.sh SSL
+# If SSL is not enabled then execute : ./importConfig.sh
+
+PROTO="http"
+[ "$1" = "SSL" ] && PROTO="https"
+
+echo "Importing the Configuration..."
+curl -k -F "files=@./testdata/0005B9423910.xml" $PROTO://localhost:1111/importConfig
+echo -e "\n"
+
+echo "Validating the Import..."
+curl $PROTO://localhost:1111/getConfig/0005b9423910 -k
+echo -e "\n"
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ /*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<configDataFile>
+ <fileHeader fileFormatVersion="32.594 V14.0.0" vendorName="Commscope"/>
+ <configData>
+ <managedElement swVersion="4.3.00.038" localDn="0005B9423910" hwVersion="750742.00.04" ProductClass="LTE_Enterprise_C-RANSC_Cntrl" OUI="0005B9"/>
+ <Device>
+ <Services>
+ <FAPService index="1">
+ <AccessMgmt>
+ <LTE>
+ <AccessMode>Open Access</AccessMode>
+ </LTE>
+ </AccessMgmt>
+ <CellConfig>
+ <LTE>
+ <EPC>
+ <PLMNList index="1">
+ <Alias>cpe-121</Alias>
+ <Enable>1</Enable>
+ <IsPrimary>1</IsPrimary>
+ <PLMNID>302650</PLMNID>
+ </PLMNList>
+ <TAC>1</TAC>
+ </EPC>
+ <RAN>
+ <Common>
+ <CellIdentity>12602</CellIdentity>
+ <X_0005B9_CellMode>HeNB</X_0005B9_CellMode>
+ </Common>
+ <PHY>
+ <PRACH>
+ <RootSequenceIndex>10,12,13</RootSequenceIndex>
+ </PRACH>
+ </PHY>
+ <RF>
+ <DLBandwidth>100</DLBandwidth>
+ <EARFCNDL>3200</EARFCNDL>
+ <EARFCNUL>21200</EARFCNUL>
+ <PhyCellID>262</PhyCellID>
+ <ULBandwidth>100</ULBandwidth>
+ </RF>
+ </RAN>
+ </LTE>
+ </CellConfig>
+ <FAPControl>
+ <LTE>
+ <AdminState>1</AdminState>
+ <Gateway>
+ <S1ConnectionMode>ALL</S1ConnectionMode>
+ <S1SigLinkPort>36412</S1SigLinkPort>
+ <S1SigLinkServerList>10.207.192.34</S1SigLinkServerList>
+ <SecGWServer1>10.222.222.192</SecGWServer1>
+ </Gateway>
+ <X_0005B9_SelfConfig>
+ <ClearDiscoveredNeighbors>0</ClearDiscoveredNeighbors>
+ </X_0005B9_SelfConfig>
+ </LTE>
+ </FAPControl>
+ <X_0005B9_LTE>
+ <TACList>1</TACList>
+ </X_0005B9_LTE>
+ </FAPService>
+ <X_0005B9_numSectorsPerBC>1</X_0005B9_numSectorsPerBC>
+ </Services>
+ <Time>
+ <LocalTimeZone>IST+5:30</LocalTimeZone>
+ </Time>
+ </Device>
+ </configData>
+ <fileFooter dateTime="2019-07-16T17:32:35+05:30"/>
+</configDataFile>
+
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ /*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <xs:element name="configDataFile">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="fileHeader">
+ <xs:complexType>
+ <xs:attribute name="fileFormatVersion" type="xs:string" use="required"/>
+ <xs:attribute name="senderName" type="xs:string" use="optional"/>
+ <xs:attribute name="vendorName" type="xs:string" use="optional"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="configData" minOccurs="1" maxOccurs="1"/>
+ <xs:element name="fileFooter">
+ <xs:complexType>
+ <xs:attribute name="dateTime" type="xs:dateTime" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="configData">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="managedElement" minOccurs="1" maxOccurs="1"/>
+ <xs:element ref="Device" minOccurs="1" maxOccurs="1" />
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="managedElement">
+ <xs:complexType>
+ <xs:attribute name="OUI" type="xs:string" use="required"/>
+ <xs:attribute name="localDn" type="xs:string" use="required"/>
+ <xs:attribute name="ProductClass" type="xs:string" use="required"/>
+ <xs:attribute name="swVersion" type="xs:string" use="required"/>
+ <xs:attribute name="hwVersion" type="xs:string" use="optional"/>
+ </xs:complexType>
+
+ </xs:element>
+ <xs:element name="Device">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="DeviceInfo" minOccurs="0"/>
+ <xs:element ref="Ethernet" minOccurs="0"/>
+ <xs:element ref="FAP" minOccurs="0"/>
+ <xs:element ref="FaultMgmt" minOccurs="0"/>
+ <xs:element ref="IP" minOccurs="0"/>
+ <xs:element ref="IPsec" minOccurs="0"/>
+ <xs:element ref="ManagementServer" minOccurs="0"/>
+ <xs:element ref="NeighborDiscovery" minOccurs="0"/>
+ <xs:element ref="PeriodicStatistics" minOccurs="0"/>
+ <xs:element ref="QoS" minOccurs="0"/>
+ <xs:element ref="Security" minOccurs="0"/>
+ <xs:element ref="Services" minOccurs="0"/>
+ <xs:element ref="Time" minOccurs="0"/>
+ <xs:element ref="UserInterface" minOccurs="0"/>
+ <xs:element ref="X_0005B9_FHMgmt" minOccurs="0"/>
+ <xs:element ref="X_0005B9_IPsec2" minOccurs="0"/>
+ <xs:element ref="X_0005B9_IPsecCA" minOccurs="0"/>
+ <xs:element ref="X_0005B9_License" minOccurs="0"/>
+ <xs:element ref="X_0005B9_MIGRATION" minOccurs="0"/>
+ <xs:element ref="X_0005B9_SoftwareManagement" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="DeviceInfo">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X_0005B9_OperatorName" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Ethernet">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Interface" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="Link" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="VLANTermination" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Interface">
+ <xs:selector xpath="Interface" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-Link">
+ <xs:selector xpath="Link" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-VLANTermination">
+ <xs:selector xpath="VLANTermination" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="Interface">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="DuplexMode" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="LowerLayers" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxBitRate" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Link">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="LowerLayers" type="xs:string" minOccurs="0"/>
+ <xs:element name="PriorityTagging" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="VLANTermination">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="LowerLayers" type="xs:string" minOccurs="0"/>
+ <xs:element name="VLANID" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="FAP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="GPS" minOccurs="0"/>
+ <xs:element ref="PerfMgmt" minOccurs="0"/>
+ <xs:element name="X_0005B9_DasRttDelay" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EnableDasMode" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_FileTransfer" minOccurs="0"/>
+ <xs:element ref="X_0005B9_FileTransfersEnh" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="X_0005B9_LogLevelConfiguration" minOccurs="0"/>
+ <xs:element ref="X_0005B9_Logging" minOccurs="0"/>
+ <xs:element name="X_0005B9_PlatformManagementEnable" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_RPLogManagement" minOccurs="0"/>
+ <xs:element ref="X_0005B9_RU" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="X_0005B9_RUBlacklisted" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_RUSoftwareManagement" minOccurs="0"/>
+ <xs:element name="X_0005B9_RUWhiteList" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_SlotReservation" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="X_0005B9_Trace" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="X_0005B9_TraceFileTransfer" minOccurs="0"/>
+ <xs:element ref="X_0005B9_UserManagement" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-X_0005B9_FileTransfersEnh">
+ <xs:selector xpath="X_0005B9_FileTransfersEnh" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-X_0005B9_RU">
+ <xs:selector xpath="X_0005B9_RU" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-X_0005B9_SlotReservation">
+ <xs:selector xpath="X_0005B9_SlotReservation" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-X_0005B9_Trace">
+ <xs:selector xpath="X_0005B9_Trace" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="GPS">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="AGPSServerConfig" minOccurs="0"/>
+ <xs:element name="ContinuousGPS" type="xs:string" minOccurs="0"/>
+ <xs:element ref="ContinuousGPSStatus" minOccurs="0"/>
+ <xs:element name="GPSReset" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="ScanOnBoot" type="xs:string" minOccurs="0"/>
+ <xs:element name="ScanPeriodically" type="xs:string" minOccurs="0"/>
+ <xs:element name="ScanTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_HoldoverTimeOutDuration" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_NominalGPS" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="AGPSServerConfig">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="Password" type="xs:string" minOccurs="0"/>
+ <xs:element name="ReferenceLatitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="ReferenceLongitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerPort" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerURL" type="xs:string" minOccurs="0"/>
+ <xs:element name="Username" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_aGPSRetryPeriodMax" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ContinuousGPSStatus">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="FirstFixTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="LockTimeOutDuration" type="xs:string" minOccurs="0"/>
+ <xs:element name="SatelliteTrackingInterval" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_NominalGPS">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Altitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="Confidence" type="xs:string" minOccurs="0"/>
+ <xs:element name="DegreesOfLatitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="DegreesOfLongitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="DirectionOfAltitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="LatitudeSign" type="xs:string" minOccurs="0"/>
+ <xs:element name="OrientationOfMajorAxis" type="xs:string" minOccurs="0"/>
+ <xs:element name="UncertaintyAltitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="UncertaintySemiMajor" type="xs:string" minOccurs="0"/>
+ <xs:element name="UncertaintySemiMinor" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PerfMgmt">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Config" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Config">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X_0005B9_FileType" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_XMLFormat" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_FileTransfer">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="FileDetails" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="HistOMFileWithDebugLog" type="xs:string" minOccurs="0"/>
+ <xs:element name="Password" type="xs:string" minOccurs="0"/>
+ <xs:element name="RPOMFileWithDebugLog" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerURL" type="xs:string" minOccurs="0"/>
+ <xs:element name="Username" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-FileDetails">
+ <xs:selector xpath="FileDetails" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="FileDetails">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="FileName" type="xs:string" minOccurs="0"/>
+ <xs:element name="IncludeRadioPointLog" type="xs:string" minOccurs="0"/>
+ <xs:element name="LocationOnServer" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferNow" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferType" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferWindowDuration" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferWindowInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferWindowStartTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_FileTransfersEnh">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="FileDetails" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="FileCompressionEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="FileCompressionType" type="xs:string" minOccurs="0"/>
+ <xs:element name="FileName" type="xs:string" minOccurs="0"/>
+ <xs:element name="IncludeRadioPointLog" type="xs:string" minOccurs="0"/>
+ <xs:element name="LocationOnServer" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferNow" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferType" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferWindowDuration" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferWindowInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferWindowStartTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Password" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerURL" type="xs:string" minOccurs="0"/>
+ <xs:element name="Username" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ <xs:unique name="uniqueId-FileDetails1">
+ <xs:selector xpath="FileDetails" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="X_0005B9_LogLevelConfiguration">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CUAPP_CURURecvSendT" type="xs:string" minOccurs="0"/>
+ <xs:element name="DIMClient" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_FAPController" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_FAPManagement" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_L2L3MessagingInterface" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_RRM" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_RRMUEMGR" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_RuMgr" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_SON" type="xs:string" minOccurs="0"/>
+ <xs:element name="LTEAPP_STACKController" type="xs:string" minOccurs="0"/>
+ <xs:element name="RRC" type="xs:string" minOccurs="0"/>
+ <xs:element name="RUAPP_RUDiscoveryConfigClient" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_Logging">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="SyslogNg" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SyslogNg">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="EventTypes" type="xs:string" minOccurs="0"/>
+ <xs:element name="MonitoredInterface" type="xs:string" minOccurs="0"/>
+ <xs:element name="Port" type="xs:string" minOccurs="0"/>
+ <xs:element name="Server" type="xs:string" minOccurs="0"/>
+ <xs:element name="UseIPSecTunnel" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_RPLogManagement">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="IncludePlatformLog" type="xs:string" minOccurs="0"/>
+ <xs:element name="TransferLogsToController" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_RU">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Device" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DeviceInfo" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="DeviceType" type="xs:string" minOccurs="0"/>
+ <xs:element name="InstallationType" type="xs:string" minOccurs="0"/>
+ <xs:element ref="Location" minOccurs="0"/>
+ <xs:element ref="NGRP" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="PHY" minOccurs="0"/>
+ <xs:element ref="RAN" minOccurs="0"/>
+ <xs:element ref="SlotReservation" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RUIndex" type="xs:string" minOccurs="0"/>
+ <xs:element name="Reboot" type="xs:string" minOccurs="0"/>
+ <xs:element name="Reset" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Location">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Altitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="Confidence" type="xs:string" minOccurs="0"/>
+ <xs:element name="DataObject" type="xs:string" minOccurs="0"/>
+ <xs:element name="DegreesOfLatitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="DegreesOfLongitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="DirectionOfAltitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="LatitudeSign" type="xs:string" minOccurs="0"/>
+ <xs:element name="OrientationOfMajorAxis" type="xs:string" minOccurs="0"/>
+ <xs:element name="UncertaintyAltitude" type="xs:string" minOccurs="0"/>
+ <xs:element name="UncertaintySemiMajor" type="xs:string" minOccurs="0"/>
+ <xs:element name="UncertaintySemiMinor" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="NGRP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="REBOOT" type="xs:string" minOccurs="0"/>
+ <xs:element name="RESET" type="xs:string" minOccurs="0"/>
+ <xs:element name="TimingSource" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PHY">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="AntennaInfo" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="AntennaInfo">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AntennaType" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RAN">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="RF" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RF">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="RfTxPower" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SlotReservation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AntennaPortNumber" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_RUSoftwareManagement">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ApplyImage" type="xs:string" minOccurs="0"/>
+ <xs:element name="EnableNGRPUpgrade" type="xs:string" minOccurs="0"/>
+ <xs:element name="FileTransferProtocol" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_SlotReservation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AntennaPortNumber" type="xs:string" minOccurs="0"/>
+ <xs:element name="PARTNUMBER" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_Trace">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="UeSpecificTraceEnable" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_TraceFileTransfer">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="FileUploadPeriodicity" type="xs:string" minOccurs="0"/>
+ <xs:element name="LocationOnServer" type="xs:string" minOccurs="0"/>
+ <xs:element name="Password" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerPort" type="xs:string" minOccurs="0"/>
+ <xs:element name="Username" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_UserManagement">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ExternalAuthAccess" type="xs:string" minOccurs="0"/>
+ <xs:element ref="LDAP" minOccurs="0"/>
+ <xs:element ref="RADIUS" minOccurs="0"/>
+ <xs:element ref="UserAccount" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-UserAccount">
+ <xs:selector xpath="UserAccount" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="LDAP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AdminDN" type="xs:string" minOccurs="0"/>
+ <xs:element name="AdminPassword" type="xs:string" minOccurs="0"/>
+ <xs:element name="BaseDN" type="xs:string" minOccurs="0"/>
+ <xs:element name="ConnectionTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="Filter" type="xs:string" minOccurs="0"/>
+ <xs:element name="Port" type="xs:string" minOccurs="0"/>
+ <xs:element name="RetryCount" type="xs:string" minOccurs="0"/>
+ <xs:element name="SASL" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerIPAddress" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerName" type="xs:string" minOccurs="0"/>
+ <xs:element name="TLSCertificate" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RADIUS">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ConnectionTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="NASIPAddress" type="xs:string" minOccurs="0"/>
+ <xs:element name="NASIdentifier" type="xs:string" minOccurs="0"/>
+ <xs:element name="Port" type="xs:string" minOccurs="0"/>
+ <xs:element name="RetryCount" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerIPAddress" type="xs:string" minOccurs="0"/>
+ <xs:element name="SharedSecretKey" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="UserAccount">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Password" type="xs:string" minOccurs="0"/>
+ <xs:element name="Privileges" type="xs:string" minOccurs="0"/>
+ <xs:element name="ResetPassword" type="xs:string" minOccurs="0"/>
+ <xs:element name="Status" type="xs:string" minOccurs="0"/>
+ <xs:element name="UserName" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="FaultMgmt">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="CurrentAlarm" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="ExpeditedEvent" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="HistoryEvent" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="SupportedAlarm" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="X_0005B9_SendTestAlarm" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-CurrentAlarm">
+ <xs:selector xpath="CurrentAlarm" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-ExpeditedEvent">
+ <xs:selector xpath="ExpeditedEvent" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-HistoryEvent">
+ <xs:selector xpath="HistoryEvent" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-SupportedAlarm">
+ <xs:selector xpath="SupportedAlarm" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="CurrentAlarm">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CurrentAlarmIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ExpeditedEvent">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ExpediteAlarmIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="HistoryEvent">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="HistoryAlarmIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SupportedAlarm">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ReportingMechanism" type="xs:string" minOccurs="0"/>
+ <xs:element name="SupportedAlarmIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Interface" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="AutoIPEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element ref="IPv4Address" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="IPv4Enable" type="xs:string" minOccurs="0"/>
+ <xs:element ref="IPv6Address" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="IPv6Enable" type="xs:string" minOccurs="0"/>
+ <xs:element ref="IPv6Prefix" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="Loopback" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxMTUSize" type="xs:string" minOccurs="0"/>
+ <xs:element name="Reset" type="xs:string" minOccurs="0"/>
+ <xs:element name="Router" type="xs:string" minOccurs="0"/>
+ <xs:element name="ULAEnable" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Interface1">
+ <xs:selector xpath="Interface" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-IPv4Address">
+ <xs:selector xpath="IPv4Address" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-IPv6Address">
+ <xs:selector xpath="IPv6Address" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-IPv6Prefix">
+ <xs:selector xpath="IPv6Prefix" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="IPv4Address">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AddressingType" type="xs:string" minOccurs="0"/>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="IPAddress" type="xs:string" minOccurs="0"/>
+ <xs:element name="SubnetMask" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DNS" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IPv6Address">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Anycast" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="IPAddress" type="xs:string" minOccurs="0"/>
+ <xs:element name="Origin" type="xs:string" minOccurs="0"/>
+ <xs:element name="PreferredLifetime" type="xs:string" minOccurs="0"/>
+ <xs:element name="Prefix" type="xs:string" minOccurs="0"/>
+ <xs:element name="ValidLifetime" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DNS" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Prefix" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IPv6Prefix">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildPrefixBits" type="xs:string" minOccurs="0"/>
+ <xs:element name="Origin" type="xs:string" minOccurs="0"/>
+ <xs:element name="ParentPrefix" type="xs:string" minOccurs="0"/>
+ <xs:element name="PreferredLifetime" type="xs:string" minOccurs="0"/>
+ <xs:element name="Prefix" type="xs:string" minOccurs="0"/>
+ <xs:element name="StaticType" type="xs:string" minOccurs="0"/>
+ <xs:element name="ValidLifetime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IPsec">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element ref="Filter" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="IKEv2SA" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="LogLevel" minOccurs="0"/>
+ <xs:element ref="Profile" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="Tunnel" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="X_0005B9_ExcludeCP" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IgnoreBasicConstraint" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Filter">
+ <xs:selector xpath="Filter" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-IKEv2SA">
+ <xs:selector xpath="IKEv2SA" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-Profile">
+ <xs:selector xpath="Profile" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-Tunnel">
+ <xs:selector xpath="Tunnel" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="Filter">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="AllInterfaces" type="xs:string" minOccurs="0"/>
+ <xs:element name="Interface" type="xs:string" minOccurs="0"/>
+ <xs:element name="Order" type="xs:string" minOccurs="0"/>
+ <xs:element name="Profile" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IKEv2SA">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element ref="ChildSA" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ <xs:unique name="uniqueId-ChildSA">
+ <xs:selector xpath="ChildSA" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="ChildSA">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LogLevel">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X_0005B9_cfg" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_chd" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_dmn" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_enc" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ike" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_knl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_lib" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_mgr" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_net" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Profile">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AHAllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="AntiReplayWindowSize" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSATimeLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSATrafficLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="DSCPMarkPolicy" type="xs:string" minOccurs="0"/>
+ <xs:element name="DoNotFragment" type="xs:string" minOccurs="0"/>
+ <xs:element name="ESPAllowedEncryptionAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="ESPAllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedDiffieHellmanGroupTransforms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedEncryptionAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedPseudoRandomFunctions" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AuthenticationMethod" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2DeadPeerDetectionTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2NATTKeepaliveTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2SATimeLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxChildSAs" type="xs:string" minOccurs="0"/>
+ <xs:element name="Protocol" type="xs:string" minOccurs="0"/>
+ <xs:element name="RemoteEndpoints" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IKEv2RekeyMargin" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IPsec_IKERetryCount" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IPsec_IKERetryTimeOut" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IPsec_IKETunnelBounce" type="xs:string" minOccurs="0"/>
+ <xs:element name="gtpFragmentation" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Tunnel">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ManagementServer">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ConnectionRequestPassword" type="xs:string" minOccurs="0"/>
+ <xs:element name="ConnectionRequestUsername" type="xs:string" minOccurs="0"/>
+ <xs:element name="Password" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicInformEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicInformInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicInformTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="URL" type="xs:string" minOccurs="0"/>
+ <xs:element name="UpgradesManaged" type="xs:string" minOccurs="0"/>
+ <xs:element name="Username" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="NeighborDiscovery">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element ref="InterfaceSetting" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-InterfaceSetting">
+ <xs:selector xpath="InterfaceSetting" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="InterfaceSetting">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="Interface" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxRtrSolicitations" type="xs:string" minOccurs="0"/>
+ <xs:element name="NUDEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="RSEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="RetransTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="RtrSolicitationInterval" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PeriodicStatistics">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="SampleSet" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-SampleSet">
+ <xs:selector xpath="SampleSet" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="SampleSet">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="SampleInterval" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="QoS">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Classification" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Classification">
+ <xs:selector xpath="Classification" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="Classification">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DSCPMark" type="xs:string" minOccurs="0"/>
+ <xs:element name="Protocol" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Security">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Certificate" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="X_0005B9_CMPv2" minOccurs="0"/>
+ <xs:element ref="X_0005B9_WebGUI" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Certificate">
+ <xs:selector xpath="Certificate" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="Certificate">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CertIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_CMPv2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CAServer" type="xs:string" minOccurs="0"/>
+ <xs:element name="Port" type="xs:string" minOccurs="0"/>
+ <xs:element name="RenewBefore" type="xs:string" minOccurs="0"/>
+ <xs:element name="SecGWServer" type="xs:string" minOccurs="0"/>
+ <xs:element name="URI" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_WebGUI">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ResetAdminUserPassword" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Services">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="FAPService" minOccurs="0" maxOccurs="2"/>
+ <xs:element ref="VoiceService" minOccurs="0" maxOccurs="2"/>
+ <xs:element name="X_0005B9_FNEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MOCNEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_nRrc4CatM1" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_numSectorsPerBC" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="FAPService">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="AccessMgmt" minOccurs="0"/>
+ <xs:element ref="Capabilities" minOccurs="0"/>
+ <xs:element ref="CellConfig" minOccurs="0"/>
+ <xs:element ref="FAPControl" minOccurs="0"/>
+ <xs:element ref="REM" minOccurs="0"/>
+ <xs:element ref="Transport" minOccurs="0"/>
+ <xs:element ref="X_0005B9_AutoConfig" minOccurs="0"/>
+ <xs:element ref="X_0005B9_AutoTxPower" minOccurs="0"/>
+ <xs:element ref="X_0005B9_ExpressREM" minOccurs="0"/>
+ <xs:element ref="X_0005B9_LTE" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="AccessMgmt">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="LTE" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LTE">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AccessMode" type="xs:string" minOccurs="0"/>
+ <xs:element name="CSGID" type="xs:string" minOccurs="0"/>
+ <xs:element name="HNBName" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxCSGMembers" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxNonCSGMembers" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxResourceNonCSGMembers" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxUEsServed" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Capabilities">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LTE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X_0005B9_MaxNumX2" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CellConfig">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LTE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="EPC" minOccurs="0"/>
+ <xs:element name="RAN" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="CellRestriction" minOccurs="0"/>
+ <xs:element ref="Common" minOccurs="0"/>
+ <xs:element ref="MAC" minOccurs="0"/>
+ <xs:element ref="Mobility" minOccurs="0"/>
+ <xs:element ref="NeighborList" minOccurs="0"/>
+ <xs:element ref="NeighborListInUse" minOccurs="0"/>
+ <xs:element name="PHY" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="PDSCH" minOccurs="0"/>
+ <xs:element ref="PRACH" minOccurs="0"/>
+ <xs:element ref="PUCCH" minOccurs="0"/>
+ <xs:element ref="PUSCH" minOccurs="0"/>
+ <xs:element ref="SRS" minOccurs="0"/>
+ <xs:element ref="ULPowerControl" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RF" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DLBandwidth" type="xs:string" minOccurs="0"/>
+ <xs:element name="EARFCNDL" type="xs:string" minOccurs="0"/>
+ <xs:element name="EARFCNUL" type="xs:string" minOccurs="0"/>
+ <xs:element name="FreqBandIndicator" type="xs:string" minOccurs="0"/>
+ <xs:element name="PBCHPowerOffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="PSCHPowerOffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="PhyCellID" type="xs:string" minOccurs="0"/>
+ <xs:element name="ReferenceSignalPower" type="xs:string" minOccurs="0"/>
+ <xs:element name="SSCHPowerOffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="ULBandwidth" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Imargin" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Imax" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxTxPower" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="RLC" minOccurs="0"/>
+ <xs:element ref="RRCTimers" minOccurs="0"/>
+ <xs:element ref="S1AP" minOccurs="0"/>
+ <xs:element ref="S1U" minOccurs="0"/>
+ <xs:element ref="X_0005B9_X2AP_CE" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="X_0005B9_CE" minOccurs="0"/>
+ <xs:element ref="X_0005B9_CarrierAggregation" minOccurs="0"/>
+ <xs:element ref="X_0005B9_RrcConnection" minOccurs="0"/>
+ <xs:element ref="X_0005B9_RrcConnectionRejection" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="EPC">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AllowedCipheringAlgorithmList" type="xs:string" minOccurs="0"/>
+ <xs:element name="AllowedIntegrityProtectionAlgorithmList" type="xs:string" minOccurs="0"/>
+ <xs:element name="EAID" type="xs:string" minOccurs="0"/>
+ <xs:element ref="PLMNList" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="QoS" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PacketelayBudget" type="xs:string" minOccurs="0"/>
+ <xs:element name="Priority" type="xs:string" minOccurs="0"/>
+ <xs:element name="QCI" type="xs:string" minOccurs="0"/>
+ <xs:element name="Type" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DSCP" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DeltaBundle" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_PacketLossRate" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_RLCMode" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_RTPBundle" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_SPSPeriodDL" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_SPSPeriodUL" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="TAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxConcurrentCMASBroadcasts" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_PWSMode" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-PLMNList">
+ <xs:selector xpath="PLMNList" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-QoS">
+ <xs:selector xpath="QoS" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="PLMNList">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellReservedForOperatorUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="IsPrimary" type="xs:string" minOccurs="0"/>
+ <xs:element name="PLMNID" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_BarringForEmergency" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_BarringSkipForMMTELVideo" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_BarringSkipForMMTELVoice" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_BarringSkipForSMS" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_ImpendingOverload" minOccurs="0"/>
+ <xs:element name="X_0005B9_MODataBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MODataBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MODataBarringTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MOSigBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MOSigBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MOSigBarringTime" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_NormalLoad" minOccurs="0"/>
+ <xs:element ref="X_0005B9_Overload" minOccurs="0"/>
+ <xs:element name="X_0005B9_PLMNListIndex" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Type" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_WarningLoadLvl" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_ImpendingOverload">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="acBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_NormalLoad">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="acBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_Overload">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="acBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_WarningLoadLvl">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="acBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="acBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CellRestriction">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="BarringForEmergency" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellBarred" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellReservedForOperatorUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_AccBarStaticEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_AutoACBEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_BarringSkipForMMTELVideo" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_BarringSkipForMMTELVoice" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_BarringSkipForSMS" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ImpendingOverload" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ACBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="X_0005B9_L3_ImpendingOverload" minOccurs="0"/>
+ <xs:element ref="X_0005B9_L3_OK" minOccurs="0"/>
+ <xs:element ref="X_0005B9_L3_Overload" minOccurs="0"/>
+ <xs:element ref="X_0005B9_L3_Warning" minOccurs="0"/>
+ <xs:element name="X_0005B9_MODataBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MODataBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MODataBarringTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MOSigBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MOSigBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MOSigBarringTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_NormalLoad" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ACBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_Overload" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ACBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_WarningLoadLvl" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ACBarringFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringForSpecialAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="ACBarringTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_cellLock" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_guardTimer" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_L3_ImpendingOverload">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="MaxS1PagesPerRRCPage" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_L3_OK">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="MaxS1PagesPerRRCPage" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_L3_Overload">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="MaxS1PagesPerRRCPage" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_L3_Warning">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="MaxS1PagesPerRRCPage" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Common">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CellIdentity" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CellMode" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CellName" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="MAC">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="DRX" minOccurs="0"/>
+ <xs:element ref="RACH" minOccurs="0"/>
+ <xs:element ref="ULSCH" minOccurs="0"/>
+ <xs:element name="X_0005B9_DlMssClampVal" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DynDciCQIThreshDl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DynDciCQIThreshUl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_GratUlDciTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_GtpMtu" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_HighCQIAggLevelDl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_HighCQIAggLevelUl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_LowCQIAggLevelDl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_LowCQIAggLevelUl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MacSuspendEnbRlfEnabled" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxCcchMsgRetx" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxDLUePerTTI" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxGbrBearers" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxGbrDLUePerTTI" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxGbrDlBitsPerSec" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxGbrULUePerTTI" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxGbrUlBitsPerSec" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxHarqReTxDl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxNumCzvRp" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MaxULUePerTTI" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MinCzvThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MssClampEnabled" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_PriorityMetricMethod" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_PucchPrbReserved" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_QCI6MinDlBitsPerSec" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_QCI6MinUlBitsPerSec" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ReuseInterferenceThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_SingleLayerCLSMEnabled" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_UlMssClampVal" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="DRX">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DRXEnabled" type="xs:string" minOccurs="0"/>
+ <xs:element name="DRXInactivityTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="DRXRetransmissionTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="DRXShortCycleTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="DRXStartOffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="LongDRXCycle" type="xs:string" minOccurs="0"/>
+ <xs:element name="OnDurationTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="ShortDRXCycle" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_maxDrxUe" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RACH">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ContentionResolutionTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxHARQMsg3Tx" type="xs:string" minOccurs="0"/>
+ <xs:element name="MessagePowerOffsetGroupB" type="xs:string" minOccurs="0"/>
+ <xs:element name="MessageSizeGroupA" type="xs:string" minOccurs="0"/>
+ <xs:element name="NumberOfRaPreambles" type="xs:string" minOccurs="0"/>
+ <xs:element name="PowerRampingStep" type="xs:string" minOccurs="0"/>
+ <xs:element name="PreambleInitialReceivedTargetPower" type="xs:string" minOccurs="0"/>
+ <xs:element name="PreambleTransMax" type="xs:string" minOccurs="0"/>
+ <xs:element name="ResponseWindowSize" type="xs:string" minOccurs="0"/>
+ <xs:element name="SizeOfRaGroupA" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="PreambleTransMax" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="X_0005B9_CE0" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_CE0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ContentionResolutionTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="ResponseWindowSize" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ULSCH">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X_0005B9_qci1MaxHARQ-Tx" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Mobility">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="ConnMode" minOccurs="0"/>
+ <xs:element ref="IdleMode" minOccurs="0"/>
+ <xs:element name="X_0005B9_csfbMeasWaitTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_csfbPrefRat" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_iRatPsRedirection" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ConnMode">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="EUTRA" minOccurs="0"/>
+ <xs:element ref="IRAT" minOccurs="0"/>
+ <xs:element name="X_0005B9_HOBlackListEnabled" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_InterFreqHandOffEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IntraFreqHandOffEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_RSRPThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_RSRQThreshold" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="EUTRA">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="A1ThresholdRSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="A1ThresholdRSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="A2ThresholdRSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="A2ThresholdRSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="A3Offset" type="xs:string" minOccurs="0"/>
+ <xs:element name="A5Threshold1RSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="A5Threshold1RSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="A5Threshold2RSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="A5Threshold2RSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="FilterCoefficientRSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="FilterCoefficientRSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="Hysteresis" type="xs:string" minOccurs="0"/>
+ <xs:element name="ReportAmount" type="xs:string" minOccurs="0"/>
+ <xs:element name="ReportInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="ReportOnLeave" type="xs:string" minOccurs="0"/>
+ <xs:element name="ReportQuantity" type="xs:string" minOccurs="0"/>
+ <xs:element name="TimeToTrigger" type="xs:string" minOccurs="0"/>
+ <xs:element name="TriggerQuantity" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="A3Offset" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IRAT">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="B1ThresholdUTRAEcN0" type="xs:string" minOccurs="0"/>
+ <xs:element name="B1ThresholdUTRARSCP" type="xs:string" minOccurs="0"/>
+ <xs:element name="B2Threshold1RSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="B2Threshold1RSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="B2Threshold2UTRAEcN0" type="xs:string" minOccurs="0"/>
+ <xs:element name="B2Threshold2UTRARSCP" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IdleMode">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Common" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="NCellChangeHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="NCellChangeMedium" type="xs:string" minOccurs="0"/>
+ <xs:element name="QHystSFHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="QHystSFMedium" type="xs:string" minOccurs="0"/>
+ <xs:element name="Qhyst" type="xs:string" minOccurs="0"/>
+ <xs:element name="THystNormal" type="xs:string" minOccurs="0"/>
+ <xs:element name="Tevaluation" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IRAT" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="CDMA2000" minOccurs="0"/>
+ <xs:element ref="GERAN" minOccurs="0"/>
+ <xs:element ref="UTRA" minOccurs="0"/>
+ <xs:element name="X_0005B9_CSFBMODE" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CSFBRATTYPE" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EmergencyExcessFactor" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_cSFBDUALReceiveENABLE" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="InterFreq" minOccurs="0"/>
+ <xs:element ref="IntraFreq" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CDMA2000">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="CDMA2000Band" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="SearchWindowSize" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionCDMA2000" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionCDMA2000SFHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionCDMA2000SFMedium" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_CellParam" minOccurs="0"/>
+ <xs:element ref="X_0005B9_Mobility_SIB8_Parameters" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-CDMA2000Band">
+ <xs:selector xpath="CDMA2000Band" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="CDMA2000Band">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="BandClass" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellReselectionPriority" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXLow" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Index" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_CellParam">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ReferenceCellID" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_Mobility_SIB8_Parameters">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Auth" type="xs:string" minOccurs="0"/>
+ <xs:element name="ForeignNidReg" type="xs:string" minOccurs="0"/>
+ <xs:element name="ForeignSidReg" type="xs:string" minOccurs="0"/>
+ <xs:element name="HomeReg" type="xs:string" minOccurs="0"/>
+ <xs:element name="IMSI1112" type="xs:string" minOccurs="0"/>
+ <xs:element name="ImsiTSupported" type="xs:string" minOccurs="0"/>
+ <xs:element name="MCC" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxNumAltSO" type="xs:string" minOccurs="0"/>
+ <xs:element name="MultipleNid" type="xs:string" minOccurs="0"/>
+ <xs:element name="MultipleSid" type="xs:string" minOccurs="0"/>
+ <xs:element name="Nid" type="xs:string" minOccurs="0"/>
+ <xs:element name="PacketZoneId" type="xs:string" minOccurs="0"/>
+ <xs:element name="ParameReg" type="xs:string" minOccurs="0"/>
+ <xs:element name="PowerDownReg" type="xs:string" minOccurs="0"/>
+ <xs:element name="PowerUpReg" type="xs:string" minOccurs="0"/>
+ <xs:element name="PrefMSIDType" type="xs:string" minOccurs="0"/>
+ <xs:element name="RegPrd" type="xs:string" minOccurs="0"/>
+ <xs:element name="RegZone" type="xs:string" minOccurs="0"/>
+ <xs:element name="Sid" type="xs:string" minOccurs="0"/>
+ <xs:element name="TotalZone" type="xs:string" minOccurs="0"/>
+ <xs:element name="ZoneTimer" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="GERAN">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="GERANFreqGroup" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="t-ReselectionGERAN" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-GERANFreqGroup">
+ <xs:selector xpath="GERANFreqGroup" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="GERANFreqGroup">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="BCCHARFCN" type="xs:string" minOccurs="0"/>
+ <xs:element name="BandIndicator" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellReselectionPriority" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="QRxLevMin" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXLow" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Index" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="UTRA">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="TReselectionUTRA" type="xs:string" minOccurs="0"/>
+ <xs:element ref="UTRANFDDFreq" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="X_0005B9_threshXHighQr9SIB6" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_threshXLowQr9SIB6" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-UTRANFDDFreq">
+ <xs:selector xpath="UTRANFDDFreq" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="UTRANFDDFreq">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellReselectionPriority" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PMaxUTRA" type="xs:string" minOccurs="0"/>
+ <xs:element name="QQualMin" type="xs:string" minOccurs="0"/>
+ <xs:element name="QRxLevMin" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXLow" type="xs:string" minOccurs="0"/>
+ <xs:element name="UTRACarrierARFCN" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Index" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="InterFreq">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Carrier" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Carrier">
+ <xs:selector xpath="Carrier" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="Carrier">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellReselectionPriority" type="xs:string" minOccurs="0"/>
+ <xs:element name="EUTRACarrierARFCN" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="Pmax" type="xs:string" minOccurs="0"/>
+ <xs:element name="QOffsetFreq" type="xs:string" minOccurs="0"/>
+ <xs:element name="QRxLevMinSIB5" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionEUTRA" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionEUTRASFHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionEUTRASFMedium" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshXLow" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MultiBandInfoList" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ThreshXHighQr9SIB5" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ThreshXLowQr9SIB5" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_qQualMinSIB5" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IntraFreq">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CellReselectionPriority" type="xs:string" minOccurs="0"/>
+ <xs:element name="Pmax" type="xs:string" minOccurs="0"/>
+ <xs:element name="QRxLevMinOffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="QRxLevMinSIB1" type="xs:string" minOccurs="0"/>
+ <xs:element name="QRxLevMinSIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="SIntraSearch" type="xs:string" minOccurs="0"/>
+ <xs:element name="SNonIntraSearch" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionEUTRA" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionEUTRASFHigh" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReselectionEUTRASFMedium" type="xs:string" minOccurs="0"/>
+ <xs:element name="ThreshServingLow" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="QRxLevMinSIB1" type="xs:string" minOccurs="0"/>
+ <xs:element name="QRxLevMinSIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="qQualMinRSRQSIB1" type="xs:string" minOccurs="0"/>
+ <xs:element name="qQualMinRSRQSIB3" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_IntraFreqReselectionSIB1" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_allowedMeasurementBandwidthSIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_neighCellConfigSIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_pMaxSIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_presenceAntennaPort1SIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_qQualMinOffsetr9SIB1" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_qQualMinSIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_qQualMinr9SIB1" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_sIntraSearch_Pr9SIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_sIntraSearch_Qr9SIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_snonIntraSearch_Pr9SIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_snonIntraSearch_Qr9SIB3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_thresholdServingLowQSIB3" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="NeighborList">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="InterRATCell" minOccurs="0"/>
+ <xs:element ref="LTECell" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-LTECell">
+ <xs:selector xpath="LTECell" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="InterRATCell">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CDMA2000" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ARFCN" type="xs:string" minOccurs="0"/>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="BandClass" type="xs:string" minOccurs="0"/>
+ <xs:element name="CID" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="MustInclude" type="xs:string" minOccurs="0"/>
+ <xs:element name="PNOffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="Type" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_FpcFchInitSetptRc3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Index" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MinProtocolRevLevel" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_PilotInc" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ProtocolRevLevel" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-CDMA2000">
+ <xs:selector xpath="CDMA2000" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="LTECell">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="Blacklisted" type="xs:string" minOccurs="0"/>
+ <xs:element name="CID" type="xs:string" minOccurs="0"/>
+ <xs:element name="CIO" type="xs:string" minOccurs="0"/>
+ <xs:element name="EUTRACarrierARFCN" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="MustInclude" type="xs:string" minOccurs="0"/>
+ <xs:element name="PLMNID" type="xs:string" minOccurs="0"/>
+ <xs:element name="PhyCellID" type="xs:string" minOccurs="0"/>
+ <xs:element name="Qoffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="RSTxPower" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CSGIdentity" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CSGIndication" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_FreqBandIndicatorPriority" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_LBPartner" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_LTECellNeighborListIndex" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MFBICapable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MultiBandInfoList" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_TAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_X2LinkEnable" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="NeighborListInUse">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="InterRATCell" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CDMA2000" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="NLInUseCDMA2000Index" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="GSM" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element ref="UMTS" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="LTECell" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="NeighborListInUseCellIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-CDMA20001">
+ <xs:selector xpath="CDMA2000" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-GSM">
+ <xs:selector xpath="GSM" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-UMTS">
+ <xs:selector xpath="UMTS" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-LTECell1">
+ <xs:selector xpath="LTECell" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="GSM">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="NLInUseGSMIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="UMTS">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="NLInUseUMTSIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PDSCH">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Pa" type="xs:string" minOccurs="0"/>
+ <xs:element name="Pb" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PRACH">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ConfigurationIndex" type="xs:string" minOccurs="0"/>
+ <xs:element name="FreqOffset" type="xs:string" minOccurs="0"/>
+ <xs:element name="RootSequenceIndex" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ConfigIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ZeroCorrelationZoneConfig" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PUCCH">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CQIPUCCHResourceIndex" type="xs:string" minOccurs="0"/>
+ <xs:element name="DeltaPUCCHShift" type="xs:string" minOccurs="0"/>
+ <xs:element name="DynamicSRsupport" type="xs:string" minOccurs="0"/>
+ <xs:element name="N1PUCCHAN" type="xs:string" minOccurs="0"/>
+ <xs:element name="NRBCQI" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DummyDci0Allocation" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DummyDci0Thr" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PUSCH">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="ULRS" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ULRS">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="SequenceHoppingEnabled" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SRS">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AckNackSRSSimultaneousTransmission" type="xs:string" minOccurs="0"/>
+ <xs:element name="SRSBandwidthConfig" type="xs:string" minOccurs="0"/>
+ <xs:element name="SRSEnabled" type="xs:string" minOccurs="0"/>
+ <xs:element name="SRSMaxUpPTS" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ULPowerControl">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alpha" type="xs:string" minOccurs="0"/>
+ <xs:element name="P0NominalPUCCH" type="xs:string" minOccurs="0"/>
+ <xs:element name="P0NominalPUSCH" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RLC">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="DRB" minOccurs="0"/>
+ <xs:element ref="SRB1" minOccurs="0"/>
+ <xs:element ref="SRB2" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="DRB">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="MaxRetxThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="TPollRetransmit" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SRB1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DefaultConfiguration" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxRetxThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="PollByte" type="xs:string" minOccurs="0"/>
+ <xs:element name="PollPDU" type="xs:string" minOccurs="0"/>
+ <xs:element name="TPollRetransmit" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReordering" type="xs:string" minOccurs="0"/>
+ <xs:element name="TStatusProhibit" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SRB2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DefaultConfiguration" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxRetxThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="PollByte" type="xs:string" minOccurs="0"/>
+ <xs:element name="PollPDU" type="xs:string" minOccurs="0"/>
+ <xs:element name="TPollRetransmit" type="xs:string" minOccurs="0"/>
+ <xs:element name="TReordering" type="xs:string" minOccurs="0"/>
+ <xs:element name="TStatusProhibit" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RRCTimers">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="N310" type="xs:string" minOccurs="0"/>
+ <xs:element name="N311" type="xs:string" minOccurs="0"/>
+ <xs:element name="T300" type="xs:string" minOccurs="0"/>
+ <xs:element name="T301" type="xs:string" minOccurs="0"/>
+ <xs:element name="T302" type="xs:string" minOccurs="0"/>
+ <xs:element name="T304EUTRA" type="xs:string" minOccurs="0"/>
+ <xs:element name="T304IRAT" type="xs:string" minOccurs="0"/>
+ <xs:element name="T310" type="xs:string" minOccurs="0"/>
+ <xs:element name="T311" type="xs:string" minOccurs="0"/>
+ <xs:element name="T320" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="T300" type="xs:string" minOccurs="0"/>
+ <xs:element name="T301" type="xs:string" minOccurs="0"/>
+ <xs:element name="T304EUTRA" type="xs:string" minOccurs="0"/>
+ <xs:element name="T310" type="xs:string" minOccurs="0"/>
+ <xs:element name="T311" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_RLFWaitForReestTimer" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="S1AP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="TRelocOverall" type="xs:string" minOccurs="0"/>
+ <xs:element name="TRelocPrep" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="TRelocOverall" type="xs:string" minOccurs="0"/>
+ <xs:element name="TRelocPrep" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_eNBName" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="S1U">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="GTPUEchoInterval" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_X2AP_CE">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="TRelocOverall" type="xs:string" minOccurs="0"/>
+ <xs:element name="TRelocPrep" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_CE">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="eDRXAllowed" type="xs:string" minOccurs="0"/>
+ <xs:element name="numSib1BrRep" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_CarrierAggregation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="CaLoadBalance" type="xs:string" minOccurs="0"/>
+ <xs:element name="CaUeThr" type="xs:string" minOccurs="0"/>
+ <xs:element name="DlQloadLowCount" type="xs:string" minOccurs="0"/>
+ <xs:element name="DlQloadLowThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="McsScc" type="xs:string" minOccurs="0"/>
+ <xs:element name="PccCaThr" type="xs:string" minOccurs="0"/>
+ <xs:element name="QloadCaLimitInstances" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccA2ThreshRSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccA2ThreshRSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccA4ThreshRSRP" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccA4ThreshRSRQ" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccColocatedPairTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccCqiLowCount" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccCqiLowThesh" type="xs:string" minOccurs="0"/>
+ <xs:element name="SccCqiStaleTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_RrcConnection">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="NRrcCC" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_RrcConnectionRejection">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="deprioritisationTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="deprioritisationType" type="xs:string" minOccurs="0"/>
+ <xs:element name="waitTime" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="FAPControl">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LTE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AdminState" type="xs:string" minOccurs="0"/>
+ <xs:element ref="Gateway" minOccurs="0"/>
+ <xs:element name="PMConfig" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_CE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DefaultPagingCycle" type="xs:string" minOccurs="0"/>
+ <xs:element name="siRepetitionPattern" type="xs:string" minOccurs="0"/>
+ <xs:element name="siValidityTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="siWindowLength" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_CatM1Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_DefaultPagingCycle" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EmergencyErabARP" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_Enable4X4MIMO" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EnableDL256QAM" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EnableDlReuse" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EnableUL64QAM" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EnableUlReuse" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IdleLoadBalance" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_InactivityTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MCPTTEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MFBISupport" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_MultiBandInfoList" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ReuseFactorDl" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_ReuseFactorUl" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_SelfConfig" minOccurs="0"/>
+ <xs:element name="X_0005B9_UnequalTxPower" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_X2Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_downlinkCaEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_explicitlyReleaseAfter" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_maxSPSDL" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_maxSPSUL" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_maxSirThr" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_minSirThr" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_numConfiguredSPSProcess" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_numRpInMaxQsv" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_spsMcsOverride" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SelfConfigEvents" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Gateway">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="S1ConnectionMode" type="xs:string" minOccurs="0"/>
+ <xs:element name="S1SigLinkPort" type="xs:string" minOccurs="0"/>
+ <xs:element name="S1SigLinkServerList" type="xs:string" minOccurs="0"/>
+ <xs:element name="SecGWServer1" type="xs:string" minOccurs="0"/>
+ <xs:element name="SecGWServer2" type="xs:string" minOccurs="0"/>
+ <xs:element name="SecGWServer3" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_EnableDUALTunnel" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_S1apGaurdPeriod" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_SecGW2Server1" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_SecGW2Server2" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_SecGW2Server3" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_SelfConfig">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ANRSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="AssignSameTAC" type="xs:string" minOccurs="0"/>
+ <xs:element name="AutoTxPowerEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="CellReselectionSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="ClearDiscoveredNeighbors" type="xs:string" minOccurs="0"/>
+ <xs:element name="CrntiHist" type="xs:string" minOccurs="0"/>
+ <xs:element name="EARFCNDLSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="InterFreqMeasSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="InterRATMeasSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="IntraFreqMeasSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="NeighborListSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PciColDetectThr" type="xs:string" minOccurs="0"/>
+ <xs:element name="PciCollisionDetectFlag" type="xs:string" minOccurs="0"/>
+ <xs:element name="PhyCellIDSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PmaxSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PreambleRACHTxPwrSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PropotionalRrcSplit" type="xs:string" minOccurs="0"/>
+ <xs:element name="RSTxPowerSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="RootSequenceIndexSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="RsiCollisionDetectFlag" type="xs:string" minOccurs="0"/>
+ <xs:element name="TACPolicy" type="xs:string" minOccurs="0"/>
+ <xs:element name="TACSelfConfigEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="X2TriggeredPciReconfigAllowed" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="REM">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LTE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Cell" minOccurs="0" maxOccurs="unbounded"/>
+ <xs:element name="EUTRACarrierARFCNDLList" type="xs:string" minOccurs="0"/>
+ <xs:element name="InServiceHandling" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="REMBandList" type="xs:string" minOccurs="0"/>
+ <xs:element name="REMPLMNList" type="xs:string" minOccurs="0"/>
+ <xs:element name="ScanOnBoot" type="xs:string" minOccurs="0"/>
+ <xs:element name="ScanPeriodically" type="xs:string" minOccurs="0"/>
+ <xs:element name="ScanTimeout" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="UMTS" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="GSM" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ARFCNList" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="WCDMA" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Cell">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="RemLteCellIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="WCDMA">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="UARFCNDLList" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Transport">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="SCTP" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SCTP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="HBInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxAssociationRetransmits" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxInitRetransmits" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxPathRetransmits" type="xs:string" minOccurs="0"/>
+ <xs:element name="RTOInitial" type="xs:string" minOccurs="0"/>
+ <xs:element name="RTOMax" type="xs:string" minOccurs="0"/>
+ <xs:element name="RTOMin" type="xs:string" minOccurs="0"/>
+ <xs:element name="SCTPMTUSize" type="xs:string" minOccurs="0"/>
+ <xs:element name="SackFrequency" type="xs:string" minOccurs="0"/>
+ <xs:element name="ValCookieLife" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_AutoConfig">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LTE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AvgMcsOnDlThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="AvgMcsOnUlThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="ConnectionDropRateThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="EarfcnProgressiveEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="EpochCountThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="ErabEstablishmentFailureThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="FiftyThPercentileMcsDlThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="FiftyThPercentileMcsUlThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="HoSuccessThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="PciProgressiveEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="PeriodicTime" type="xs:string" minOccurs="0"/>
+ <xs:element name="RachToConnectionThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="RsiProgressiveEnable" type="xs:string" minOccurs="0"/>
+ <xs:element name="RsrpPciThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="RssiThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="TenThPercentileMcsDlThresh" type="xs:string" minOccurs="0"/>
+ <xs:element name="TenThPercentileMcsUlThresh" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_AutoTxPower">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LTE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AutoPowerConfigTimer" type="xs:string" minOccurs="0"/>
+ <xs:element name="DisablePowerDuration" type="xs:string" minOccurs="0"/>
+ <xs:element name="HOCountThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="LeakageRateThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="ProcessRLFonRrcConnEst" type="xs:string" minOccurs="0"/>
+ <xs:element name="RLFRateThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="RRCConnectionThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="RSRPThreshold" type="xs:string" minOccurs="0"/>
+ <xs:element name="STmsiAge" type="xs:string" minOccurs="0"/>
+ <xs:element name="Tcritical" type="xs:string" minOccurs="0"/>
+ <xs:element name="ToggleCountThreshold" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_ExpressREM">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LTE" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Enabled" type="xs:string" minOccurs="0"/>
+ <xs:element name="NumCarriers" type="xs:string" minOccurs="0"/>
+ <xs:element name="PCIListLength" type="xs:string" minOccurs="0"/>
+ <xs:element name="Periodicity" type="xs:string" minOccurs="0"/>
+ <xs:element name="TimeOut" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_LTE">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ANREpochPeriod" type="xs:string" minOccurs="0"/>
+ <xs:element name="CrntiStartRange" type="xs:string" minOccurs="0"/>
+ <xs:element name="EARFCNDLInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="EARFCNULInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="PMReportFormat" type="xs:string" minOccurs="0"/>
+ <xs:element name="PMaxInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="PhyCellIDInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="PreambleRACHTxPwrInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="RSTxPowerInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="RootSequenceIndexInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="TACInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="TACList" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="VoiceService">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="X_0005B9_VoIP" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_VoIP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="EmergencyPolicy" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Time">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LocalTimeZone" type="xs:string" minOccurs="0"/>
+ <xs:element name="NTPServer1" type="xs:string" minOccurs="0"/>
+ <xs:element name="NTPServer2" type="xs:string" minOccurs="0"/>
+ <xs:element name="NTPServer3" type="xs:string" minOccurs="0"/>
+ <xs:element name="NTPServer4" type="xs:string" minOccurs="0"/>
+ <xs:element name="NTPServer5" type="xs:string" minOccurs="0"/>
+ <xs:element ref="X_0005B9_PTP" minOccurs="0"/>
+ <xs:element name="X_0005B9_TimeSource" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_PTP">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AssymetricDelay" type="xs:string" minOccurs="0"/>
+ <xs:element name="DomainNumber" type="xs:string" minOccurs="0"/>
+ <xs:element name="MultiCastIPAddress" type="xs:string" minOccurs="0"/>
+ <xs:element name="Server" type="xs:string" minOccurs="0"/>
+ <xs:element name="ServerInUse" type="xs:string" minOccurs="0"/>
+ <xs:element name="TCID" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="UserInterface">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X_0005B9_Enable" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_FHMgmt">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="TrapReceiver" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="TrapReceiver">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AuthKey" type="xs:string" minOccurs="0"/>
+ <xs:element name="AuthProtocol" type="xs:string" minOccurs="0"/>
+ <xs:element name="DMSIPAddressPort" type="xs:string" minOccurs="0"/>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="IPAddress" type="xs:string" minOccurs="0"/>
+ <xs:element name="PrivacyKey" type="xs:string" minOccurs="0"/>
+ <xs:element name="PrivacyProtocol" type="xs:string" minOccurs="0"/>
+ <xs:element name="ProcessingRate" type="xs:string" minOccurs="0"/>
+ <xs:element name="SwitchEngineID" type="xs:string" minOccurs="0"/>
+ <xs:element name="UserName" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_IPsec2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ExcludeCP" type="xs:string" minOccurs="0"/>
+ <xs:element name="Filter" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="AllInterfaces" type="xs:string" minOccurs="0"/>
+ <xs:element name="Interface" type="xs:string" minOccurs="0"/>
+ <xs:element name="Order" type="xs:string" minOccurs="0"/>
+ <xs:element name="Profile" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IKEv2SA" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSA" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Profile" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AHAllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="AntiReplayWindowSize" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSATimeLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSATrafficLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="DSCPMarkPolicy" type="xs:string" minOccurs="0"/>
+ <xs:element name="DoNotFragment" type="xs:string" minOccurs="0"/>
+ <xs:element name="ESPAllowedEncryptionAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="ESPAllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedDiffieHellmanGroupTransforms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedEncryptionAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedPseudoRandomFunctions" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AuthenticationMethod" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2DeadPeerDetectionTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2NATTKeepaliveTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2SATimeLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxChildSAs" type="xs:string" minOccurs="0"/>
+ <xs:element name="Protocol" type="xs:string" minOccurs="0"/>
+ <xs:element name="RemoteEndpoints" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IKEv2RekeyMargin" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Filter1">
+ <xs:selector xpath="Filter" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-IKEv2SA1">
+ <xs:selector xpath="IKEv2SA" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-ChildSA1">
+ <xs:selector xpath="ChildSA" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-Profile1">
+ <xs:selector xpath="Profile" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="X_0005B9_IPsecCA">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Enable" type="xs:string" minOccurs="0"/>
+ <xs:element name="ExcludeCP" type="xs:string" minOccurs="0"/>
+ <xs:element name="Filter" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="AllInterfaces" type="xs:string" minOccurs="0"/>
+ <xs:element name="Interface" type="xs:string" minOccurs="0"/>
+ <xs:element name="Order" type="xs:string" minOccurs="0"/>
+ <xs:element name="Profile" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="IKEv2SA" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSA" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Profile" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="AHAllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="Alias" type="xs:string" minOccurs="0"/>
+ <xs:element name="AntiReplayWindowSize" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSATimeLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="ChildSATrafficLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="DSCPMarkPolicy" type="xs:string" minOccurs="0"/>
+ <xs:element name="DoNotFragment" type="xs:string" minOccurs="0"/>
+ <xs:element name="ESPAllowedEncryptionAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="ESPAllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedDiffieHellmanGroupTransforms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedEncryptionAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedIntegrityAlgorithms" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AllowedPseudoRandomFunctions" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2AuthenticationMethod" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2DeadPeerDetectionTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2NATTKeepaliveTimeout" type="xs:string" minOccurs="0"/>
+ <xs:element name="IKEv2SATimeLimit" type="xs:string" minOccurs="0"/>
+ <xs:element name="MaxChildSAs" type="xs:string" minOccurs="0"/>
+ <xs:element name="Protocol" type="xs:string" minOccurs="0"/>
+ <xs:element name="RemoteEndpoints" type="xs:string" minOccurs="0"/>
+ <xs:element name="X_0005B9_IKEv2RekeyMargin" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Filter12">
+ <xs:selector xpath="Filter" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-IKEv2SA12">
+ <xs:selector xpath="IKEv2SA" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-ChildSA12">
+ <xs:selector xpath="ChildSA" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ <xs:unique name="uniqueId-Profile12">
+ <xs:selector xpath="Profile" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="X_0005B9_License">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="Licenses" minOccurs="0" maxOccurs="unbounded"/>
+
+ </xs:sequence>
+ </xs:complexType>
+
+ <xs:unique name="uniqueId-Licenses">
+ <xs:selector xpath="Licenses" />
+ <xs:field xpath="@index" />
+ </xs:unique>
+ </xs:element>
+ <xs:element name="Licenses">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="LicenseKeyIndex" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ <xs:attribute name="index" type="dmsIndex" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_MIGRATION">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Migrate" type="xs:string" minOccurs="0"/>
+ <xs:element name="Rollback" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="X_0005B9_SoftwareManagement">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="ApplyWindowDuration" type="xs:string" minOccurs="0"/>
+ <xs:element name="ApplyWindowInterval" type="xs:string" minOccurs="0"/>
+ <xs:element name="ApplyWindowStart" type="xs:string" minOccurs="0"/>
+ <xs:element name="UpgradeState" type="xs:string" minOccurs="0"/>
+
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:simpleType name="dmsIndex">
+ <xs:restriction base="xs:integer">
+ <xs:minInclusive value="1"/>
+ <xs:pattern value="\d+"/>
+ </xs:restriction>
+ </xs:simpleType>
+</xs:schema>
--- /dev/null
+# ============LICENSE_START========================================================================
+# O-RAN-SC : tr-069-adapter
+# =================================================================================================
+# Copyright (C) 2020 CommScope Inc Intellectual Property.
+# =================================================================================================
+# This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
+# Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
+# may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+# either express or implied. See the License for the specific language governing permissions and
+# limitations under the License.
+# ===============LICENSE_END=======================================================================
+
+#
+# Below 3 are the identites of TR069Adapters. This is needed if any one of the communication is going to be over SSL.
+#
+# tr069adapterSSLCert : Provide the Public Certificate Chain for TR069Adapter
+# tr069adapterSSLKey : Provide the Private Key for TR069Adapter
+# tr069adapterCertPassPhrase : Provide the PassPhrase used while generating the Public Certificate Chain for TR069Adapter
+
+tr069adapterSSLCert=tr069adapter.crt
+tr069adapterSSLKey=tr069adapter.key
+tr069adapterCertPassPhrase=tr069adapterpassphrase.txt
+
+
+#
+# Details for the Fault VES Collector Variables.
+#
+# faultvesCollectorDNSServer : If the faultvesCollectorHost is not an IP, but a FQDN, then provide the DNS Server IP where this FQDN is configured and will be resolved.
+# faultvesCollectorHost : IP of the Fault VES Collector. Allowed values (IPv4/IPv6). If FQDN is provided, then provide the complete FQDN and not just the HOSTNAME.
+# faultvesCollectorPort : Port of the Fault VES Collector.
+# faultvesCollectorComm : Communication to and from Fault VES Collector. Allowed values (noAuth/basicAuth/certOnly/certBasicAuth)
+# noAuth : SSL is disabled.
+# basicAuth : SSL is enabled, and the verification is done via username and password only.
+# certOnly : SSL is enabled, and the verification is done via Certificates only that are imported in VES.
+# certBasicAuth : SSL is enabled, and the verification is done using username and password and also with Certificates.
+# faultvesCollectorTrustVerify : If SSL is enabled, then whether to Trust Certificate. Allowed Values (TRUE/FALSE)
+# faultvesCollectorTrustCRT : If faultvesCollectorTrustVerify=TRUE, then provide the Trust Certificate Chain
+# faultvesCollectorBasicAuthUserPassEncrypt : If faultvesCollectorComm=basicAuth or faultvesCollectorComm=certBasicAuth, then provide the encrypted string. To encrypt execute the command 'echo -n "user:pass" | base64'
+
+faultvesCollectorDNSServer=
+faultvesCollectorHost=
+faultvesCollectorPort=8080
+faultvesCollectorComm=noAuth
+faultvesCollectorTrustVerify=FALSE
+faultvesCollectorTrustCRT=faultvestrustcert.pem
+faultvesCollectorBasicAuthUserPassEncrypt=
+
+#
+# Details for the PNF VES Collector Variables.
+#
+# pnfregvesCollectorDNSServer : If the pnfregvesCollectorHost is not an IP, but a FQDN, then provide the DNS Server IP where this FQDN is configured and will be resolved.
+# pnfregvesCollectorHost : IP of the PNF VES Collector. Allowed values (IPv4/IPv6). If FQDN is provided, then provide the complete FQDN and not just the HOSTNAME.
+# pnfregvesCollectorPort : Port of the PNF VES Collector.
+# pnfregvesCollectorComm : Communication to and from PNF VES Collector. Allowed values (noAuth/basicAuth/certOnly/certBasicAuth)
+# noAuth : SSL is disabled.
+# basicAuth : SSL is enabled, and the verification is done via username and password only.
+# certOnly : SSL is enabled, and the verification is done via Certificates only that are imported in VES.
+# certBasicAuth : SSL is enabled, and the verification is done using username and password and also with Certificates.
+# pnfregvesCollectorTrustVerify : If SSL is enabled, then whether to Trust Certificate. Allowed Values (TRUE/FALSE)
+# pnfregvesCollectorTrustCRT : If pnfregvesCollectorTrustVerify=TRUE, then provide the Trust Certificate Chain
+# pnfregvesCollectorBasicAuthUserPassEncrypt : If pnfregvesCollectorComm=basicAuth or pnfregvesCollectorComm=certBasicAuth, then provide the encrypted string. To encrypt execute the command 'echo -n "user:pass" | base64'
+
+pnfregvesCollectorDNSServer=
+pnfregvesCollectorHost=
+pnfregvesCollectorPort=8080
+pnfregvesCollectorComm=noAuth
+pnfregvesCollectorTrustVerify=FALSE
+pnfregvesCollectorTrustCRT=pnfvertrustcert.pem
+pnfregvesCollectorBasicAuthUserPassEncrypt=
+
+#
+# Details for the TR069Adapter Variables.
+#
+# tr069adapterComm : Communication to and from TR069Adapter. For all device communications, Factory Import and Config Import. Allowed values (SSL/NO-SSL)
+# tr069adapterSSLClientAuth : If tr069adapterComm=SSL, then whether to Authenticate Client Certificate. Allowed Values (TRUE/FALSE)
+# tr069adapterSSLClientTrustCRT : If tr069adapterSSLClientAuth=TRUE, then provide the Trust Certificate Chain for the client
+
+tr069adapterComm=NO-SSL
+tr069adapterSSLClientAuth=FALSE
+tr069adapterSSLClientTrustCRT=tr069adapterclienttrust.crt
+
+#
+# Details for the TR069Adapter Variables.
+#
+# netconfServerIP : IP address of the Server where the Docker containers are hosted. Allowed value is IPv4
+# DeviceId : Mac ID of the Device
+
+netconfServerIP=
+DeviceId=0005B9423910
+
+
--- /dev/null
+# ============LICENSE_START========================================================================
+# O-RAN-SC : tr-069-adapter
+# =================================================================================================
+# Copyright (C) 2020 CommScope Inc Intellectual Property.
+# =================================================================================================
+# This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
+# Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
+# may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+# either express or implied. See the License for the specific language governing permissions and
+# limitations under the License.
+# ===============LICENSE_END=======================================================================
+
+# Note:
+# In order to support the deployment in IPv6 Docker-compose enviroment, uncomment the lines in the
+# network section and update the subnet and Gateway.
+#
+
+version: '2.4'
+services:
+ tr069adapter-mariadb:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-mariadb:latest"
+ container_name: tr069adapter-mariadb
+ restart: always
+ ports:
+ - "3306:3306"
+ networks:
+ - csadapter_nw
+ environment:
+ MYSQL_ROOT_PASSWORD: root
+
+ tr069adapter-acs-factorydb:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-acs-factorydb:latest"
+ container_name: tr069adapter-acs-factorydb
+ restart: always
+ depends_on:
+ - tr069adapter-mariadb
+ ports:
+ - "8089:8089"
+ networks:
+ - csadapter_nw
+ environment:
+ FACTORY_PORT: 8089
+
+ tr069adapter-acs:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-acs:latest"
+ container_name: tr069adapter-acs
+ restart: always
+ depends_on:
+ - tr069adapter-mariadb
+ ports:
+ - "9977:9977"
+ networks:
+ - csadapter_nw
+ environment:
+ ACS_REST_PORT: 9977
+ ACS_ADDITIONAL_REST_PORT: 9975
+ ACS_SSL_ENABLED: 'false'
+ CERT_FILE: /logs
+ DB_USERNAME: root
+ DB_PASSWORD: root
+ DB_SERVICE: tr069adapter-mariadb
+ DB_NAME: dmsdb
+ MAPPER_REST_PORT: 9999
+ FACTORY_REST_PORT: 8089
+ FACTORY_REST_HOST: tr069adapter-acs-factorydb
+ MAPPER_REST_HOST: tr069adapter-netconfig-mapper
+
+ tr069adapter-netconfig-mapper:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-netconfig-mapper:latest"
+ container_name: tr069adapter-netconfig-mapper
+ restart: always
+ depends_on:
+ - tr069adapter-mariadb
+ ports:
+ - "9999:9999"
+ networks:
+ - csadapter_nw
+ environment:
+ SBI_REST_HOST: tr069adapter-acs
+ SBI_REST_PORT: 9977
+ CONFIG_DB_REST_HOST: tr069adapter-acs-initialpnpdb
+ CONFIG_DB_REST_PORT: 9000
+ MAPPER_REST_PORT: 9999
+ REQUEST_TIMEOUT: 300
+ PRE_CONFIGURE_ON_PNP: 'true'
+ NBI_REST_HOST: tr069adapter-netconf-server
+ NBI_REST_PORT: 8181
+ VES_REST_HOST: tr069adapter-ves-notifier
+ VES_REST_PORT: 8383
+ NBI_NETCONF_PORT: 17830
+ NETCONF_SERVER_PORT: 17830
+ NETCONF_SERVER_IP: tr069adapter-netconf-server
+
+ tr069adapter-netconf-server:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-netconf-server:latest"
+ container_name: tr069adapter-netconf-server
+ restart: always
+ depends_on:
+ - tr069adapter-mariadb
+ ports:
+ - "8181:8181"
+ - "17830:17830"
+ networks:
+ - csadapter_nw
+ environment:
+ NETCONF_REST_PORT: 8181
+ MAPPER_REST_PORT: 9999
+ NETCONFSRV_PORT: 17830
+ DeviceId: ${DeviceId}
+ netConfServerIP: ${netconfServerIP}
+ MAPPER_REST_HOST: tr069adapter-netconfig-mapper
+ VES_PORT: 8383
+ VES_REST_HOST: tr069adapter-ves-notifier
+ VES_REST_PORT: 8383
+
+ tr069adapter-ves-notifier:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-ves-notifier:latest"
+ container_name: tr069adapter-ves-notifier
+ restart: always
+ depends_on:
+ - tr069adapter-mariadb
+ ports:
+ - "8383:8383"
+ networks:
+ - csadapter_nw
+ environment:
+ VES_REST_PORT: 8383
+ faultvesCollectorHost: ${netconfServerIP}
+ faultvesCollectorPort: 2222
+ pnfregvesCollectorHost: ${netconfServerIP}
+ pnfregvesCollectorPort: 3333
+ MAPPER_REST_HOST: tr069adapter-netconfig-mapper
+ MAPPER_REST_PORT: 9999
+ DB_USERNAME: root
+ DB_PASSWORD: root
+ DB_SERVICE: tr069adapter-mariadb
+ DB_NAME: dmsdb
+ CONFIG_MAP_ENABLE: 'false'
+
+ tr069adapter-acs-initialpnpdb:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-acs-initialpnpdb:latest"
+ container_name: tr069adapter-acs-initialpnpdb
+ restart: always
+ depends_on:
+ - tr069adapter-mariadb
+ ports:
+ - "9000:9000"
+ networks:
+ - csadapter_nw
+ environment:
+ DB_USERNAME: root
+ DB_PASSWORD: root
+ DB_SERVICE: tr069adapter-mariadb
+ DB_NAME: dmsdb
+ INITIALPNP_PORT: 9000
+
+ tr069adapter-nginx:
+ image: "nexus3.o-ran-sc.org:10004/o-ran-sc/tr069adapter-nginx:latest"
+ container_name: tr069adapter-nginx
+ restart: always
+ ports:
+ - "1111:1111"
+ - "2222:2222"
+ - "3333:3333"
+ volumes:
+ - ./ssl:/etc/nginx/ssl/
+ environment:
+ faultvesCollectorDNSServer: ${faultvesCollectorDNSServer}
+ faultvesCollectorHost: ${faultvesCollectorHost}
+ faultvesCollectorPort: ${faultvesCollectorPort}
+ faultvesCollectorComm: ${faultvesCollectorComm}
+ faultvesCollectorSSLCert: ${tr069adapterSSLCert}
+ faultvesCollectorSSLKey: ${tr069adapterSSLKey}
+ faultvesCollectorTrustVerify: ${faultvesCollectorTrustVerify}
+ faultvesCollectorTrustCRT: ${faultvesCollectorTrustCRT}
+ pnfregvesCollectorDNSServer: ${pnfregvesCollectorDNSServer}
+ pnfregvesCollectorHost: ${pnfregvesCollectorHost}
+ pnfregvesCollectorPort: ${pnfregvesCollectorPort}
+ pnfregvesCollectorComm: ${pnfregvesCollectorComm}
+ pnfregvesCollectorSSLCert: ${tr069adapterSSLCert}
+ pnfregvesCollectorSSLKey: ${tr069adapterSSLKey}
+ pnfregvesCollectorTrustVerify: ${pnfregvesCollectorTrustVerify}
+ pnfregvesCollectorTrustCRT: ${pnfregvesCollectorTrustCRT}
+ netconfServerIP: ${netconfServerIP}
+ tr069adapterComm: ${tr069adapterComm}
+ tr069adapterSSLCert: ${tr069adapterSSLCert}
+ tr069adapterSSLKey: ${tr069adapterSSLKey}
+ tr069adapterSSLClientAuth: ${tr069adapterSSLClientAuth}
+ tr069adapterSSLClientTrustCRT: ${tr069adapterSSLClientTrustCRT}
+ tr069adapterCertPassPhrase: ${tr069adapterCertPassPhrase}
+ pnfregvesCollectorBasicAuthUserPassEncrypt: ${pnfregvesCollectorBasicAuthUserPassEncrypt}
+ faultvesCollectorBasicAuthUserPassEncrypt: ${faultvesCollectorBasicAuthUserPassEncrypt}
+ networks:
+ - csadapter_nw
+ command: /bin/bash -c "/opt/CSAdapter/configNginx.sh"
+
+networks:
+ csadapter_nw:
+ name: csadapter_nw
+ driver: bridge
+# enable_ipv6: true
+# ipam:
+# driver: default
+# config:
+# - subnet: 2001:db9:1::/64
+# gateway: 2001:db9:1::1
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- <modelVersion>4.0.0</modelVersion>\r
- <parent>\r
- <groupId>org.commscope.tr069adapter</groupId>\r
- <artifactId>tr069adapter</artifactId>\r
- <version>1.0.0</version>\r
- </parent>\r
- <groupId>org.commscope.tr069adapter.factory</groupId>\r
- <artifactId>factory</artifactId>\r
- <name>factory</name>\r
- <description>Factory import project for Spring Boot</description>\r
- <licenses>\r
- <license>\r
- <name>The Apache Software License, Version 2.0</name>\r
- <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>\r
- </license>\r
- </licenses>\r
- <repositories>\r
- <repository>\r
- <id>onap-releases</id>\r
- <name>onap-releases</name>\r
- <url>https://nexus.onap.org/content/repositories/releases/</url>\r
- </repository>\r
- </repositories>\r
- <properties>\r
- <docker.image.name>tr069adapter-acs-factorydb</docker.image.name>\r
- </properties>\r
- <dependencies>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-web</artifactId>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-logging</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-log4j2</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-test</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.fasterxml.jackson.core</groupId>\r
- <artifactId>jackson-databind</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.common</groupId>\r
- <artifactId>acs-common</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- </dependencies>\r
- <build>\r
- <plugins>\r
- <plugin>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-maven-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>net.revelc.code.formatter</groupId>\r
- <artifactId>formatter-maven-plugin</artifactId>\r
- <version>${formatter-maven-plugin.version}</version>\r
- <configuration>\r
- <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>\r
- </configuration>\r
- <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format\r
- spotless:apply process-sources -->\r
- </plugin>\r
- <plugin>\r
- <groupId>com.diffplug.spotless</groupId>\r
- <artifactId>spotless-maven-plugin</artifactId>\r
- <version>${spotless-maven-plugin.version}</version>\r
- <configuration>\r
- <java>\r
- <removeUnusedImports />\r
- <importOrder>\r
- <order>com,java,javax,org</order>\r
- </importOrder>\r
- </java>\r
- </configuration>\r
- <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use\r
- mvn spotless:apply to rewrite source files use mvn spotless:check to validate\r
- source files -->\r
- </plugin>\r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-surefire-plugin</artifactId>\r
- <configuration>\r
- <skipTests>false</skipTests>\r
- </configuration>\r
- </plugin>\r
- <plugin>\r
- <artifactId>maven-failsafe-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>io.fabric8</groupId>\r
- <artifactId>docker-maven-plugin</artifactId>\r
- <version>${docker-maven-plugin}</version>\r
- <inherited>false</inherited>\r
- <executions>\r
- <execution>\r
- <id>generate-policy-agent-image</id>\r
- <phase>package</phase>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>save</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${build.version}</name>\r
- <build>\r
- <cleanup>try</cleanup>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>${project.version}</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- <execution>\r
- <id>push-policy-agent-image</id>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>push</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${project.version}</name>\r
- <build>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>latest</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- </plugin>\r
- <!-- support sonar in multi-module project -->\r
- <plugin>\r
- <groupId>org.sonarsource.scanner.maven</groupId>\r
- <artifactId>sonar-maven-plugin</artifactId>\r
- <version>${sonar-maven-plugin.version}</version>\r
- </plugin>\r
- </plugins>\r
- </build>\r
- <issueManagement>\r
- <system>JIRA</system>\r
- <url>https://jira.o-ran-sc.org/</url>\r
- </issueManagement>\r
-</project>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.commscope.tr069adapter</groupId>
+ <artifactId>tr069adapter</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <groupId>org.commscope.tr069adapter.factory</groupId>
+ <artifactId>factory</artifactId>
+ <name>factory</name>
+ <description>Factory import project for Spring Boot</description>
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+ <repositories>
+ <repository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ </repository>
+ </repositories>
+ <properties>
+ <docker.image.name>o-ran-sc/tr069adapter-acs-factorydb</docker.image.name>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-log4j2</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.common</groupId>
+ <artifactId>acs-common</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>net.revelc.code.formatter</groupId>
+ <artifactId>formatter-maven-plugin</artifactId>
+ <version>${formatter-maven-plugin.version}</version>
+ <configuration>
+ <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>
+ </configuration>
+ <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
+ spotless:apply process-sources -->
+ </plugin>
+ <plugin>
+ <groupId>com.diffplug.spotless</groupId>
+ <artifactId>spotless-maven-plugin</artifactId>
+ <version>${spotless-maven-plugin.version}</version>
+ <configuration>
+ <java>
+ <removeUnusedImports />
+ <importOrder>
+ <order>com,java,javax,org</order>
+ </importOrder>
+ </java>
+ </configuration>
+ <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
+ mvn spotless:apply to rewrite source files use mvn spotless:check to validate
+ source files -->
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skipTests>false</skipTests>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>${docker-maven-plugin}</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>generate-policy-agent-image</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>save</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${build.version}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>${project.version}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ <execution>
+ <id>push-policy-agent-image</id>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${project.version}</name>
+ <build>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>latest</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- support sonar in multi-module project -->
+ <plugin>
+ <groupId>org.sonarsource.scanner.maven</groupId>
+ <artifactId>sonar-maven-plugin</artifactId>
+ <version>${sonar-maven-plugin.version}</version>
+ </plugin>
+ </plugins>
+ </build>
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://jira.o-ran-sc.org/</url>
+ </issueManagement>
+</project>
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- <parent>\r
- <groupId>org.commscope.tr069adapter</groupId>\r
- <artifactId>tr069adapter</artifactId>\r
- <version>1.0.0</version>\r
- </parent>\r
- <modelVersion>4.0.0</modelVersion>\r
- <groupId>org.commscope.tr069adapter.mapper</groupId>\r
- <artifactId>mapper</artifactId>\r
- <name>TR069_Mapper</name>\r
- <licenses>\r
- <license>\r
- <name>The Apache Software License, Version 2.0</name>\r
- <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>\r
- </license>\r
- </licenses>\r
- <repositories>\r
- <repository>\r
- <id>onap-releases</id>\r
- <name>onap-releases</name>\r
- <url>https://nexus.onap.org/content/repositories/releases/</url>\r
- </repository>\r
- </repositories>\r
- <properties>\r
- <docker.image.name>tr069adapter-netconfig-mapper</docker.image.name>\r
- </properties>\r
- <dependencies>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-web</artifactId>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-logging</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-log4j2</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.lmax</groupId>\r
- <artifactId>disruptor</artifactId>\r
- <version>3.4.2</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-activemq</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.fasterxml.jackson.core</groupId>\r
- <artifactId>jackson-databind</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.acs.common</groupId>\r
- <artifactId>acs-common</artifactId>\r
- <version>1.0.0</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.mariadb.jdbc</groupId>\r
- <artifactId>mariadb-java-client</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-data-jpa</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>commons-io</groupId>\r
- <artifactId>commons-io</artifactId>\r
- <version>2.6</version>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit-dep</artifactId>\r
- <version>4.11</version>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-test</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.h2database</groupId>\r
- <artifactId>h2</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- </dependencies>\r
- <build>\r
- <plugins>\r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-jar-plugin</artifactId>\r
- <executions>\r
- <execution>\r
- <id>mapper-client</id>\r
- <goals>\r
- <goal>jar</goal>\r
- </goals>\r
- <configuration>\r
- <finalName>mapper-client</finalName>\r
- <classifier>lib</classifier>\r
- <includes>\r
- <include>org/commscope/tr069adapter/mapper/model/*</include>\r
- </includes>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- </plugin>\r
- <plugin>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-maven-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>net.revelc.code.formatter</groupId>\r
- <artifactId>formatter-maven-plugin</artifactId>\r
- <version>${formatter-maven-plugin.version}</version>\r
- <configuration>\r
- <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>\r
- </configuration>\r
- <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format \r
- spotless:apply process-sources -->\r
- </plugin>\r
- <plugin>\r
- <groupId>com.diffplug.spotless</groupId>\r
- <artifactId>spotless-maven-plugin</artifactId>\r
- <version>${spotless-maven-plugin.version}</version>\r
- <configuration>\r
- <java>\r
- <removeUnusedImports />\r
- <importOrder>\r
- <order>com,java,javax,org</order>\r
- </importOrder>\r
- </java>\r
- </configuration>\r
- <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use \r
- mvn spotless:apply to rewrite source files use mvn spotless:check to validate \r
- source files -->\r
- </plugin>\r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-surefire-plugin</artifactId>\r
- <version>2.17</version>\r
- <configuration>\r
- <skipTests>false</skipTests>\r
- </configuration>\r
- </plugin>\r
- <plugin>\r
- <artifactId>maven-failsafe-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>io.fabric8</groupId>\r
- <artifactId>docker-maven-plugin</artifactId>\r
- <version>${docker-maven-plugin}</version>\r
- <inherited>false</inherited>\r
- <executions>\r
- <execution>\r
- <id>generate-policy-agent-image</id>\r
- <phase>package</phase>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>save</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${build.version}</name>\r
- <build>\r
- <cleanup>try</cleanup>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>${project.version}</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- <execution>\r
- <id>push-policy-agent-image</id>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>push</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${project.version}</name>\r
- <build>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>latest</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- </plugin>\r
- <!-- support sonar in multi-module project -->\r
- <plugin>\r
- <groupId>org.sonarsource.scanner.maven</groupId>\r
- <artifactId>sonar-maven-plugin</artifactId>\r
- <version>${sonar-maven-plugin.version}</version>\r
- </plugin>\r
- </plugins>\r
- </build>\r
- <issueManagement>\r
- <system>JIRA</system>\r
- <url>https://jira.o-ran-sc.org/</url>\r
- </issueManagement>\r
-</project>
\ No newline at end of file
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.commscope.tr069adapter</groupId>
+ <artifactId>tr069adapter</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.commscope.tr069adapter.mapper</groupId>
+ <artifactId>mapper</artifactId>
+ <name>TR069_Mapper</name>
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+ <repositories>
+ <repository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ </repository>
+ </repositories>
+ <properties>
+ <docker.image.name>o-ran-sc/tr069adapter-netconfig-mapper</docker.image.name>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-log4j2</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.lmax</groupId>
+ <artifactId>disruptor</artifactId>
+ <version>3.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-activemq</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.acs.common</groupId>
+ <artifactId>acs-common</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ <dependency>
+ <groupId>org.mariadb.jdbc</groupId>
+ <artifactId>mariadb-java-client</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-data-jpa</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>2.6</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.11</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>mapper-client</id>
+ <goals>
+ <goal>jar</goal>
+ </goals>
+ <configuration>
+ <finalName>mapper-client</finalName>
+ <classifier>lib</classifier>
+ <includes>
+ <include>org/commscope/tr069adapter/mapper/model/*</include>
+ </includes>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>net.revelc.code.formatter</groupId>
+ <artifactId>formatter-maven-plugin</artifactId>
+ <version>${formatter-maven-plugin.version}</version>
+ <configuration>
+ <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>
+ </configuration>
+ <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
+ spotless:apply process-sources -->
+ </plugin>
+ <plugin>
+ <groupId>com.diffplug.spotless</groupId>
+ <artifactId>spotless-maven-plugin</artifactId>
+ <version>${spotless-maven-plugin.version}</version>
+ <configuration>
+ <java>
+ <removeUnusedImports />
+ <importOrder>
+ <order>com,java,javax,org</order>
+ </importOrder>
+ </java>
+ </configuration>
+ <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
+ mvn spotless:apply to rewrite source files use mvn spotless:check to validate
+ source files -->
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.17</version>
+ <configuration>
+ <skipTests>false</skipTests>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>${docker-maven-plugin}</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>generate-policy-agent-image</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>save</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${build.version}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>${project.version}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ <execution>
+ <id>push-policy-agent-image</id>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${project.version}</name>
+ <build>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>latest</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- support sonar in multi-module project -->
+ <plugin>
+ <groupId>org.sonarsource.scanner.maven</groupId>
+ <artifactId>sonar-maven-plugin</artifactId>
+ <version>${sonar-maven-plugin.version}</version>
+ </plugin>
+ </plugins>
+ </build>
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://jira.o-ran-sc.org/</url>
+ </issueManagement>
+</project>
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- <modelVersion>4.0.0</modelVersion>\r
- <parent>\r
- <groupId>org.commscope.tr069adapter</groupId>\r
- <artifactId>tr069adapter</artifactId>\r
- <version>1.0.0</version>\r
- </parent>\r
- <groupId>org.commscope.tr069adapter.netconf.server</groupId>\r
- <artifactId>netconf-server</artifactId>\r
- <name>netconf-server</name>\r
- <packaging>jar</packaging>\r
- <licenses>\r
- <license>\r
- <name>The Apache Software License, Version 2.0</name>\r
- <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>\r
- </license>\r
- </licenses>\r
- <repositories>\r
- <repository>\r
- <id>onap-releases</id>\r
- <name>onap-releases</name>\r
- <url>https://nexus.onap.org/content/repositories/releases/</url>\r
- </repository>\r
- </repositories>\r
- <properties>\r
- <docker.image.name>tr069adapter-netconf-server</docker.image.name>\r
- </properties>\r
- <dependencies>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter</artifactId>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-logging</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-web</artifactId>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-logging</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-activemq</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.fasterxml.jackson.core</groupId>\r
- <artifactId>jackson-databind</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.opendaylight.netconf</groupId>\r
- <artifactId>netconf-testtool</artifactId>\r
- <version>1.7.0</version>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>ch.qos.logback</groupId>\r
- <artifactId>logback-classic</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework</groupId>\r
- <artifactId>spring-context</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.commscope.tr069adapter.mapper</groupId>\r
- <artifactId>mapper</artifactId>\r
- <version>1.0.0</version>\r
- <classifier>lib</classifier>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-actuator-autoconfigure</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.retry</groupId>\r
- <artifactId>spring-retry</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework</groupId>\r
- <artifactId>spring-aspects</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.mariadb.jdbc</groupId>\r
- <artifactId>mariadb-java-client</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-data-jpa</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.mockito</groupId>\r
- <artifactId>mockito-core</artifactId>\r
- </dependency>\r
- <dependency>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-test</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit</artifactId>\r
- <scope>test</scope>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>ch.qos.logback</groupId>\r
- <artifactId>logback-classic</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>junit</groupId>\r
- <artifactId>junit-dep</artifactId>\r
- <version>4.11</version>\r
- <scope>test</scope>\r
- <exclusions>\r
- <exclusion>\r
- <groupId>ch.qos.logback</groupId>\r
- <artifactId>logback-classic</artifactId>\r
- </exclusion>\r
- </exclusions>\r
- </dependency>\r
- <dependency>\r
- <groupId>com.h2database</groupId>\r
- <artifactId>h2</artifactId>\r
- <scope>test</scope>\r
- </dependency>\r
- </dependencies>\r
- <build>\r
- <plugins>\r
- <plugin>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-maven-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>net.revelc.code.formatter</groupId>\r
- <artifactId>formatter-maven-plugin</artifactId>\r
- <version>${formatter-maven-plugin.version}</version>\r
- <configuration>\r
- <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>\r
- </configuration>\r
- <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format\r
- spotless:apply process-sources -->\r
- </plugin>\r
- <plugin>\r
- <groupId>com.diffplug.spotless</groupId>\r
- <artifactId>spotless-maven-plugin</artifactId>\r
- <version>${spotless-maven-plugin.version}</version>\r
- <configuration>\r
- <java>\r
- <removeUnusedImports />\r
- <importOrder>\r
- <order>com,java,javax,org</order>\r
- </importOrder>\r
- </java>\r
- </configuration>\r
- <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use\r
- mvn spotless:apply to rewrite source files use mvn spotless:check to validate\r
- source files -->\r
- </plugin>\r
- <plugin>\r
- <groupId>org.apache.maven.plugins</groupId>\r
- <artifactId>maven-surefire-plugin</artifactId>\r
- <configuration>\r
- <skipTests>false</skipTests>\r
- </configuration>\r
- </plugin>\r
- <plugin>\r
- <artifactId>maven-failsafe-plugin</artifactId>\r
- </plugin>\r
- <plugin>\r
- <groupId>io.fabric8</groupId>\r
- <artifactId>docker-maven-plugin</artifactId>\r
- <version>${docker-maven-plugin}</version>\r
- <inherited>false</inherited>\r
- <executions>\r
- <execution>\r
- <id>generate-policy-agent-image</id>\r
- <phase>package</phase>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>save</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${build.version}</name>\r
- <build>\r
- <cleanup>try</cleanup>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>${project.version}</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- <execution>\r
- <id>push-policy-agent-image</id>\r
- <goals>\r
- <goal>build</goal>\r
- <goal>push</goal>\r
- </goals>\r
- <configuration>\r
- <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
- <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>\r
- <images>\r
- <image>\r
- <name>${docker.image.name}:${project.version}</name>\r
- <build>\r
- <contextDir>${basedir}</contextDir>\r
- <dockerFile>Dockerfile</dockerFile>\r
- <args>\r
- <JAR>${project.build.finalName}.jar</JAR>\r
- </args>\r
- <tags>\r
- <tag>latest</tag>\r
- </tags>\r
- </build>\r
- </image>\r
- </images>\r
- </configuration>\r
- </execution>\r
- </executions>\r
- </plugin>\r
- <!-- support sonar in multi-module project -->\r
- <plugin>\r
- <groupId>org.sonarsource.scanner.maven</groupId>\r
- <artifactId>sonar-maven-plugin</artifactId>\r
- <version>${sonar-maven-plugin.version}</version>\r
- </plugin>\r
- </plugins>\r
- </build>\r
- <issueManagement>\r
- <system>JIRA</system>\r
- <url>https://jira.o-ran-sc.org/</url>\r
- </issueManagement>\r
-</project>\r
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.commscope.tr069adapter</groupId>
+ <artifactId>tr069adapter</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <groupId>org.commscope.tr069adapter.netconf.server</groupId>
+ <artifactId>netconf-server</artifactId>
+ <name>netconf-server</name>
+ <packaging>jar</packaging>
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+ <repositories>
+ <repository>
+ <id>onap-releases</id>
+ <name>onap-releases</name>
+ <url>https://nexus.onap.org/content/repositories/releases/</url>
+ </repository>
+ </repositories>
+ <properties>
+ <docker.image.name>o-ran-sc/tr069adapter-netconf-server</docker.image.name>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-logging</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-activemq</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.opendaylight.netconf</groupId>
+ <artifactId>netconf-testtool</artifactId>
+ <version>1.7.0</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.commscope.tr069adapter.mapper</groupId>
+ <artifactId>mapper</artifactId>
+ <version>1.0.0</version>
+ <classifier>lib</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-actuator-autoconfigure</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.retry</groupId>
+ <artifactId>spring-retry</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-aspects</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.mariadb.jdbc</groupId>
+ <artifactId>mariadb-java-client</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-data-jpa</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit-dep</artifactId>
+ <version>4.11</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>logback-classic</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>com.h2database</groupId>
+ <artifactId>h2</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>net.revelc.code.formatter</groupId>
+ <artifactId>formatter-maven-plugin</artifactId>
+ <version>${formatter-maven-plugin.version}</version>
+ <configuration>
+ <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>
+ </configuration>
+ <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format
+ spotless:apply process-sources -->
+ </plugin>
+ <plugin>
+ <groupId>com.diffplug.spotless</groupId>
+ <artifactId>spotless-maven-plugin</artifactId>
+ <version>${spotless-maven-plugin.version}</version>
+ <configuration>
+ <java>
+ <removeUnusedImports />
+ <importOrder>
+ <order>com,java,javax,org</order>
+ </importOrder>
+ </java>
+ </configuration>
+ <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use
+ mvn spotless:apply to rewrite source files use mvn spotless:check to validate
+ source files -->
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skipTests>false</skipTests>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>${docker-maven-plugin}</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>generate-policy-agent-image</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>save</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${build.version}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>${project.version}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ <execution>
+ <id>push-policy-agent-image</id>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${project.version}</name>
+ <build>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>latest</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- support sonar in multi-module project -->
+ <plugin>
+ <groupId>org.sonarsource.scanner.maven</groupId>
+ <artifactId>sonar-maven-plugin</artifactId>
+ <version>${sonar-maven-plugin.version}</version>
+ </plugin>
+ </plugins>
+ </build>
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://jira.o-ran-sc.org/</url>
+ </issueManagement>
+</project>
--- /dev/null
+# ============LICENSE_START========================================================================
+# O-RAN-SC : tr-069-adapter
+# =================================================================================================
+# Copyright (C) 2020 CommScope Inc Intellectual Property.
+# =================================================================================================
+# This tr-069-adapter software file is distributed by CommScope Inc
+# under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# This file is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ===============LICENSE_END=======================================================================
+
+FROM nginx:latest
+
+WORKDIR /opt/CSAdapter/
+
+ADD config/configNginx.sh configNginx.sh
+RUN chmod +x ./configNginx.sh
+ADD config/nginx.conf /etc/nginx/nginx.conf
+
--- /dev/null
+#!/bin/bash
+# ============LICENSE_START========================================================================
+# O-RAN-SC : tr-069-adapter
+# =================================================================================================
+# Copyright (C) 2020 CommScope Inc Intellectual Property.
+# =================================================================================================
+# This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
+# Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
+# may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+# either express or implied. See the License for the specific language governing permissions and
+# limitations under the License.
+# ===============LICENSE_END=======================================================================
+
+NGINX_CONF=/etc/nginx/nginx.conf
+
+updateAdapter()
+{
+echo ""
+echo "# Checking if TR069Adapter is SSL Enabled..."
+if [ $tr069adapterComm != "SSL" ]; then
+ echo ": SSL Not enabled, Cleaning up the entries..."
+ perl -pi -e "s/tr069adapterComm//g" $NGINX_CONF
+ sed -i '/tr069adapterSSLCert;/,+4 d' $NGINX_CONF
+else
+ echo ": SSL is enabled, Updating the entries..."
+ perl -pi -e "s/tr069adapterComm/ssl/g" $NGINX_CONF
+ perl -pi -e "s/tr069adapterSSLCert/${tr069adapterSSLCert}/g" $NGINX_CONF
+ perl -pi -e "s/tr069adapterSSLKey/${tr069adapterSSLKey}/g" $NGINX_CONF
+ if [ $tr069adapterSSLClientAuth != "TRUE" ]; then
+ echo ": Client Trusted Certificate verification is NOT Enabled..."
+ sed -i '/tr069adapterSSLClientTrustCRT/,+2 d' $NGINX_CONF
+ else
+ echo ": Client Trusted Certificate verification is Enabled..."
+ perl -pi -e "s/tr069adapterSSLClientTrustCRT/${tr069adapterSSLClientTrustCRT}/g" $NGINX_CONF
+ fi
+fi
+
+ if [ -f /etc/nginx/ssl/${tr069adapterCertPassPhrase} ]; then
+ echo ": Updating the Certificate PassPhrase..."
+ perl -pi -e "s/tr069adapterCertPassPhrase/${tr069adapterCertPassPhrase}/g" $NGINX_CONF
+ else
+ echo ": Certificate PassPhrase NOT Available..."
+ perl -pi -e "s/^\s*ssl_password_file.*//g" $NGINX_CONF
+ perl -pi -e "s/^\s*proxy_ssl_password_file.*//g" $NGINX_CONF
+ fi
+
+echo ": Updating the IP Address for $netconfServerIP..."
+if [[ ${netconfServerIP} =~ .*:.* ]]; then
+ perl -pi -e "s/netconfServerIP/[${netconfServerIP}]/g" $NGINX_CONF
+else
+ perl -pi -e "s/netconfServerIP/${netconfServerIP}/g" $NGINX_CONF
+fi
+}
+
+updateFaultVes()
+{
+echo ""
+echo "# Checking configuration for Fault VES Collector..."
+echo ": Updating the IP Address and Port for $faultvesCollectorHost..."
+perl -pi -e "s/faultvesCollectorPort/${faultvesCollectorPort}/g" $NGINX_CONF
+if [[ ${faultvesCollectorHost} =~ .*:.* ]]; then
+ if [ $faultvesCollectorComm = "noAuth" ]; then
+ perl -pi -e "s|https://faultvesCollectorHost|http://[${faultvesCollectorHost}]|g" $NGINX_CONF
+ else
+ perl -pi -e "s/faultvesCollectorHost/[${faultvesCollectorHost}]/g" $NGINX_CONF
+ fi
+else
+ if [ $faultvesCollectorComm = "noAuth" ]; then
+ perl -pi -e "s|https://faultvesCollectorHost|http://${faultvesCollectorHost}|g" $NGINX_CONF
+ else
+ perl -pi -e "s/faultvesCollectorHost/${faultvesCollectorHost}/g" $NGINX_CONF
+ fi
+fi
+
+if [ $faultvesCollectorComm = "noAuth" ]; then
+ echo ": SSL Not enabled, Cleaning up the entries..."
+ sed -i '/faultvesCollectorSSLCert/,+9 d' $NGINX_CONF
+
+elif [ $faultvesCollectorComm = "basicAuth" ]; then
+ echo ": SSL is enabled as basicAuth, Updating the entries..."
+ sed -i '/faultvesCollectorSSLCert/,+2 d' $NGINX_CONF
+ if [ ! -z ${faultvesCollectorBasicAuthUserPassEncrypt} ]; then
+ perl -pi -e "s/faultvesCollectorBasicAuthUserPassEncrypt/${faultvesCollectorBasicAuthUserPassEncrypt}/g" $NGINX_CONF
+ else
+ echo ": Username/Password Credentials not provided...FAILED"
+ exit 1
+ fi
+
+elif [ $faultvesCollectorComm = "certOnly" ]; then
+ echo ": SSL is enabled as certOnly, Updating the entries..."
+ if [ -f /etc/nginx/ssl/${faultvesCollectorSSLCert} ]; then
+ perl -pi -e "s/faultvesCollectorSSLCert/${faultvesCollectorSSLCert}/g" $NGINX_CONF
+ else
+ echo ": SSL Certificate ${faultvesCollectorSSLCert} not available...FAILED"
+ exit 1
+ fi
+
+ if [ -f /etc/nginx/ssl/${faultvesCollectorSSLKey} ]; then
+ perl -pi -e "s/faultvesCollectorSSLKey/${faultvesCollectorSSLKey}/g" $NGINX_CONF
+ else
+ echo ": SSL Key ${faultvesCollectorSSLKey} not available...FAILED"
+ exit 1
+ fi
+
+ sed -i 's|proxy_set_header Authorization "Basic faultvesCollectorBasicAuthUserPassEncrypt";||g' $NGINX_CONF
+
+elif [ $faultvesCollectorComm = "certBasicAuth" ]; then
+ echo ": SSL is enabled as certBasicAuth, Updating the entries..."
+ if [ ! -z ${faultvesCollectorBasicAuthUserPassEncrypt} ]; then
+ perl -pi -e "s/faultvesCollectorBasicAuthUserPassEncrypt/${faultvesCollectorBasicAuthUserPassEncrypt}/g" $NGINX_CONF
+ else
+ echo ": Username/Password Credentials not provided...FAILED"
+ exit 1
+ fi
+
+ if [ -f /etc/nginx/ssl/${faultvesCollectorSSLCert} ]; then
+ perl -pi -e "s/faultvesCollectorSSLCert/${faultvesCollectorSSLCert}/g" $NGINX_CONF
+ else
+ echo ": SSL Certificate ${faultvesCollectorSSLCert} not available...FAILED"
+ exit 1
+ fi
+
+ if [ -f /etc/nginx/ssl/${faultvesCollectorSSLKey} ]; then
+ perl -pi -e "s/faultvesCollectorSSLKey/${faultvesCollectorSSLKey}/g" $NGINX_CONF
+ else
+ echo ": SSL Key ${faultvesCollectorSSLKey} not available...FAILED"
+ exit 1
+ fi
+
+else
+ echo ": Invalid Option... FAILED"
+ exit 1
+fi
+
+echo ""
+echo "# Checking if Trusted CA Certificate verification is Enabled or Not..."
+if [ $faultvesCollectorTrustVerify != "TRUE" ]; then
+ echo ": Trusted CA Certificate verification is NOT Enabled..."
+ sed -i '/faultvesCollectorTrustCRT/,+2 d' $NGINX_CONF
+else
+ echo ": Trusted CA Certificate verification is Enabled..."
+ perl -pi -e "s/faultvesCollectorTrustCRT/${faultvesCollectorTrustCRT}/g" $NGINX_CONF
+fi
+
+echo ""
+echo "# Checking if Fault VES Collector DNS Server Details are Provided..."
+if [ ! -z ${faultvesCollectorDNSServer} ]; then
+ echo ": DNS Server Details Provided..."
+ perl -pi -e "s/faultvesCollectorDNSServer/${faultvesCollectorDNSServer}/g" $NGINX_CONF
+else
+ echo ": DNS Server Details NOT Provided..."
+ sed -i 's|resolver faultvesCollectorDNSServer;||g' $NGINX_CONF
+fi
+}
+
+updatePNFVes()
+{
+echo ""
+echo "# Checking configuration for Pnf Req VES Collector..."
+echo ": Updating the IP Address and Port for $pnfregvesCollectorHost..."
+perl -pi -e "s/pnfregvesCollectorPort/${pnfregvesCollectorPort}/g" $NGINX_CONF
+if [[ ${pnfregvesCollectorHost} =~ .*:.* ]]; then
+ if [ $pnfregvesCollectorComm = "noAuth" ]; then
+ perl -pi -e "s|https://pnfregvesCollectorHost|http://[${pnfregvesCollectorHost}]|g" $NGINX_CONF
+ else
+ perl -pi -e "s/pnfregvesCollectorHost/[${pnfregvesCollectorHost}]/g" $NGINX_CONF
+ fi
+else
+ if [ $pnfregvesCollectorComm = "noAuth" ]; then
+ perl -pi -e "s|https://pnfregvesCollectorHost|http://${pnfregvesCollectorHost}|g" $NGINX_CONF
+ else
+ perl -pi -e "s/pnfregvesCollectorHost/${pnfregvesCollectorHost}/g" $NGINX_CONF
+ fi
+fi
+
+if [ $pnfregvesCollectorComm = "noAuth" ]; then
+ echo ": SSL Not enabled, Cleaning up the entries..."
+ sed -i '/pnfregvesCollectorSSLCert/,+9 d' $NGINX_CONF
+
+elif [ $pnfregvesCollectorComm = "basicAuth" ]; then
+ echo ": SSL is enabled as basicAuth, Updating the entries..."
+ sed -i '/pnfregvesCollectorSSLCert/,+2 d' $NGINX_CONF
+ if [ ! -z ${pnfregvesCollectorBasicAuthUserPassEncrypt} ]; then
+ perl -pi -e "s/pnfregvesCollectorBasicAuthUserPassEncrypt/${pnfregvesCollectorBasicAuthUserPassEncrypt}/g" $NGINX_CONF
+ else
+ echo ": Username/Password Credentials not provided...FAILED"
+ exit 1
+ fi
+
+elif [ $pnfregvesCollectorComm = "certOnly" ]; then
+ echo ": SSL is enabled as certOnly, Updating the entries..."
+ if [ -f /etc/nginx/ssl/${pnfregvesCollectorSSLCert} ]; then
+ perl -pi -e "s/pnfregvesCollectorSSLCert/${pnfregvesCollectorSSLCert}/g" $NGINX_CONF
+ else
+ echo ": SSL Certificate ${pnfregvesCollectorSSLCert} not available...FAILED"
+ exit 1
+ fi
+
+ if [ -f /etc/nginx/ssl/${pnfregvesCollectorSSLKey} ]; then
+ perl -pi -e "s/pnfregvesCollectorSSLKey/${pnfregvesCollectorSSLKey}/g" $NGINX_CONF
+ else
+ echo ": SSL Key ${pnfregvesCollectorSSLKey} not available...FAILED"
+ exit 1
+ fi
+
+ sed -i 's|proxy_set_header Authorization "Basic pnfregvesCollectorBasicAuthUserPassEncrypt";||g' $NGINX_CONF
+
+elif [ $pnfregvesCollectorComm = "certBasicAuth" ]; then
+ echo ": SSL is enabled as certBasicAuth, Updating the entries..."
+ if [ ! -z ${pnfregvesCollectorBasicAuthUserPassEncrypt} ]; then
+ perl -pi -e "s/pnfregvesCollectorBasicAuthUserPassEncrypt/${pnfregvesCollectorBasicAuthUserPassEncrypt}/g" $NGINX_CONF
+ else
+ echo ": Username/Password Credentials not provided...FAILED"
+ exit 1
+ fi
+
+ if [ -f /etc/nginx/ssl/${pnfregvesCollectorSSLCert} ]; then
+ perl -pi -e "s/pnfregvesCollectorSSLCert/${pnfregvesCollectorSSLCert}/g" $NGINX_CONF
+ else
+ echo ": SSL Certificate ${pnfregvesCollectorSSLCert} not available...FAILED"
+ exit 1
+ fi
+
+ if [ -f /etc/nginx/ssl/${pnfregvesCollectorSSLKey} ]; then
+ perl -pi -e "s/pnfregvesCollectorSSLKey/${pnfregvesCollectorSSLKey}/g" $NGINX_CONF
+ else
+ echo ": SSL Key ${pnfregvesCollectorSSLKey} not available...FAILED"
+ exit 1
+ fi
+
+else
+ echo ": Invalid Option... FAILED"
+ exit 1
+fi
+
+echo ""
+echo "# Checking if Trusted CA Certificate verification is Enabled or Not..."
+if [ $pnfregvesCollectorTrustVerify != "TRUE" ]; then
+ echo ": Trusted CA Certificate verification is NOT Enabled..."
+ sed -i '/pnfregvesCollectorTrustCRT/,+2 d' $NGINX_CONF
+else
+ echo ": Trusted CA Certificate verification is Enabled..."
+ perl -pi -e "s/pnfregvesCollectorTrustCRT/${pnfregvesCollectorTrustCRT}/g" $NGINX_CONF
+fi
+
+echo""
+echo "# Checking if PNF VES Collector DNS Server Details are Provided..."
+if [ ! -z ${pnfregvesCollectorDNSServer} ]; then
+ echo ": DNS Server Details Provided..."
+ perl -pi -e "s/pnfregvesCollectorDNSServer/${pnfregvesCollectorDNSServer}/g" $NGINX_CONF
+else
+ echo ": DNS Server Details NOT Provided..."
+ sed -i 's|resolver pnfregvesCollectorDNSServer;||g' $NGINX_CONF
+fi
+}
+
+#
+# Main Call
+#
+
+updateAdapter
+updateFaultVes
+updatePNFVes
+
+exec nginx -g 'daemon off;'
+
--- /dev/null
+# ============LICENSE_START========================================================================
+# O-RAN-SC : tr-069-adapter
+# =================================================================================================
+# Copyright (C) 2020 CommScope Inc Intellectual Property.
+# =================================================================================================
+# This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
+# Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
+# may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+# either express or implied. See the License for the specific language governing permissions and
+# limitations under the License.
+# ===============LICENSE_END=======================================================================
+worker_processes auto;
+
+events { worker_connections 1024; }
+
+http {
+
+ sendfile on;
+ ssl_password_file /etc/nginx/ssl/tr069adapterCertPassPhrase;
+#
+# This Section is TR069Adapter for SSL Termination
+#
+ server {
+ listen 1111 tr069adapterComm;
+ server_name netconfServerIP;
+ ssl_certificate /etc/nginx/ssl/tr069adapterSSLCert;
+ ssl_certificate_key /etc/nginx/ssl/tr069adapterSSLKey;
+
+ ssl_client_certificate /etc/nginx/ssl/tr069adapterSSLClientTrustCRT;
+ ssl_verify_client on;
+
+ location /viewAll {
+ proxy_pass http://netconfServerIP:8089;
+ }
+
+ location /importFactory {
+ proxy_pass http://netconfServerIP:8089;
+ }
+
+ location /importConfig {
+ proxy_pass http://netconfServerIP:9000;
+ }
+
+ location /getConfig {
+ proxy_pass http://netconfServerIP:9000;
+ }
+
+ location /netConfServerManagerService/listServers {
+ proxy_pass http://netconfServerIP:8181;
+ }
+
+ location /CPEMgmt/acs {
+ proxy_pass http://netconfServerIP:9977;
+ proxy_redirect off;
+ proxy_set_header Host $host;
+ proxy_set_header X-Real-IP $remote_addr;
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+ proxy_set_header X-Forwarded-Host $server_name;
+ }
+ }
+
+#
+# This Section is for Fault VES Collector
+#
+ server {
+ listen 2222;
+ resolver faultvesCollectorDNSServer;
+ server_name netconfServerIP;
+
+ location / {
+ proxy_pass https://faultvesCollectorHost:faultvesCollectorPort$request_uri;
+ proxy_ssl_certificate /etc/nginx/ssl/faultvesCollectorSSLCert;
+ proxy_ssl_certificate_key /etc/nginx/ssl/faultvesCollectorSSLKey;
+ proxy_ssl_password_file /etc/nginx/ssl/tr069adapterCertPassPhrase;
+ proxy_ssl_session_reuse on;
+
+ proxy_ssl_trusted_certificate /etc/nginx/ssl/faultvesCollectorTrustCRT;
+ proxy_ssl_verify on;
+ proxy_ssl_verify_depth 2;
+
+ proxy_set_header Authorization "Basic faultvesCollectorBasicAuthUserPassEncrypt";
+ }
+ }
+
+#
+# This Section is for PNF Reg VES Collector
+#
+
+ server {
+ listen 3333;
+ resolver pnfregvesCollectorDNSServer;
+ server_name netconfServerIP;
+
+ location / {
+ proxy_pass https://pnfregvesCollectorHost:pnfregvesCollectorPort$request_uri;
+ proxy_ssl_certificate /etc/nginx/ssl/pnfregvesCollectorSSLCert;
+ proxy_ssl_certificate_key /etc/nginx/ssl/pnfregvesCollectorSSLKey;
+ proxy_ssl_password_file /etc/nginx/ssl/tr069adapterCertPassPhrase;
+ proxy_ssl_session_reuse on;
+
+ proxy_ssl_trusted_certificate /etc/nginx/ssl/pnfregvesCollectorTrustCRT;
+ proxy_ssl_verify on;
+ proxy_ssl_verify_depth 2;
+
+ proxy_set_header Authorization "Basic pnfregvesCollectorBasicAuthUserPassEncrypt";
+ }
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ /*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.commscope.tr069adapter</groupId>
+ <artifactId>tr069adapter</artifactId>
+ <version>1.0.0</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.commscope.tr069adapter.nginx</groupId>
+ <artifactId>nginx</artifactId>
+ <packaging>jar</packaging>
+ <name>nginx</name>
+ <url>http://maven.apache.org</url>
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ <docker.image.name>o-ran-sc/tr069adapter-nginx</docker.image.name>
+ </properties>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>${docker-maven-plugin}</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>generate-policy-agent-image</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ <goal>save</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${build.version}</name>
+ <build>
+ <cleanup>try</cleanup>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <tags>
+ <tag>${project.version}</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ <execution>
+ <id>push-policy-agent-image</id>
+ <goals>
+ <goal>build</goal>
+ <goal>push</goal>
+ </goals>
+ <configuration>
+ <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>
+ <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>
+ <images>
+ <image>
+ <name>${docker.image.name}:${project.version}</name>
+ <build>
+ <contextDir>${basedir}</contextDir>
+ <dockerFile>Dockerfile</dockerFile>
+ <args>
+ <JAR>${project.build.finalName}.jar</JAR>
+ </args>
+ <tags>
+ <tag>latest</tag>
+ </tags>
+ </build>
+ </image>
+ </images>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://jira.o-ran-sc.org/</url>
+ </issueManagement>
+</project>
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!--\r
-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc\r
- * under the Apache License, Version 2.0 (the "License");\r
- * you may not use this file except in compliance with the License.\r
- * You may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS,\r
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
- * See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
-*/\r
--->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">\r
- <parent>\r
- <groupId>org.springframework.boot</groupId>\r
- <artifactId>spring-boot-starter-parent</artifactId>\r
- <version>2.2.1.RELEASE</version>\r
- </parent>\r
- <modelVersion>4.0.0</modelVersion>\r
- <groupId>org.commscope.tr069adapter</groupId>\r
- <artifactId>tr069adapter</artifactId>\r
- <version>1.0.0</version>\r
- <packaging>pom</packaging>\r
- <name>tr069adapter</name>\r
- <properties>\r
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\r
- <build.version>latest</build.version>\r
- <jdk.version>1.7</jdk.version>\r
- <java.version>1.8</java.version>\r
- <org.apache.axis.version>1.4</org.apache.axis.version>\r
- <junit.version>4.12</junit.version>\r
- <junit.scope>test</junit.scope>\r
- <jta.version>1.1</jta.version>\r
- <jaxb-api.version>2.1</jaxb-api.version>\r
- <org.mockito.version>1.8.4</org.mockito.version>\r
- <maven-clean-plugin.version>2.4.1</maven-clean-plugin.version>\r
- <maven-compiler-plugin.version>3.1</maven-compiler-plugin.version>\r
- <maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version>\r
- <maven-assembly-plugin.version>2.2</maven-assembly-plugin.version>\r
- <maven-deploy-plugin.version>2.7</maven-deploy-plugin.version>\r
- <log4j.extras>1.2.17</log4j.extras>\r
- <docker-maven-plugin>0.30.0</docker-maven-plugin>\r
- <sonar-maven-plugin.version>3.7.0.1746</sonar-maven-plugin.version>\r
- <jacoco-maven-plugin.version>0.8.5</jacoco-maven-plugin.version>\r
- <spotless-maven-plugin.version>1.18.0</spotless-maven-plugin.version>\r
- <formatter-maven-plugin.version>2.8.1</formatter-maven-plugin.version>\r
- </properties>\r
- <modules>\r
- <module>common</module>\r
- <module>db</module>\r
- <module>factory</module>\r
- <module>acs</module>\r
- <module>mapper</module>\r
- <module>netconf-server</module>\r
- <module>ves-agent</module>\r
- <module>config-data</module>\r
- </modules>\r
-</project>\r
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+/*
+ * ============LICENSE_START========================================================================
+ * O-RAN-SC : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+*/
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <parent>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-parent</artifactId>
+ <version>2.2.1.RELEASE</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.commscope.tr069adapter</groupId>
+ <artifactId>tr069adapter</artifactId>
+ <version>1.0.0</version>
+ <packaging>pom</packaging>
+ <name>tr069adapter</name>
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <build.version>latest</build.version>
+ <jdk.version>1.7</jdk.version>
+ <java.version>1.8</java.version>
+ <org.apache.axis.version>1.4</org.apache.axis.version>
+ <junit.version>4.12</junit.version>
+ <junit.scope>test</junit.scope>
+ <jta.version>1.1</jta.version>
+ <jaxb-api.version>2.1</jaxb-api.version>
+ <org.mockito.version>1.8.4</org.mockito.version>
+ <maven-clean-plugin.version>2.4.1</maven-clean-plugin.version>
+ <maven-compiler-plugin.version>3.1</maven-compiler-plugin.version>
+ <maven-surefire-plugin.version>2.22.0</maven-surefire-plugin.version>
+ <maven-assembly-plugin.version>2.2</maven-assembly-plugin.version>
+ <maven-deploy-plugin.version>2.7</maven-deploy-plugin.version>
+ <log4j.extras>1.2.17</log4j.extras>
+ <docker-maven-plugin>0.30.0</docker-maven-plugin>
+ <sonar-maven-plugin.version>3.7.0.1746</sonar-maven-plugin.version>
+ <jacoco-maven-plugin.version>0.8.5</jacoco-maven-plugin.version>
+ <spotless-maven-plugin.version>1.18.0</spotless-maven-plugin.version>
+ <formatter-maven-plugin.version>2.8.1</formatter-maven-plugin.version>
+ </properties>
+ <modules>
+ <module>common</module>
+ <module>db</module>
+ <module>nginx</module>
+ <module>factory</module>
+ <module>acs</module>
+ <module>mapper</module>
+ <module>netconf-server</module>
+ <module>ves-agent</module>
+ <module>config-data</module>
+ </modules>
+</project>