diff options
Diffstat (limited to 'sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare')
12 files changed, 0 insertions, 1180 deletions
diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-bundle/pom.xml b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-bundle/pom.xml deleted file mode 100644 index 66e1ee9e..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-bundle/pom.xml +++ /dev/null @@ -1,118 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<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> - <artifactId>mwtnCompare</artifactId> - <groupId>com.highstreet.technologies.odl.dlux</groupId> - <version>0.5.1-SNAPSHOT</version> - </parent> - <artifactId>mwtnCompare-bundle</artifactId> - <name>${prefix} ${project.artifactId}</name> - <packaging>bundle</packaging> - - <dependencies> - <dependency> - <groupId>org.osgi</groupId> - <artifactId>org.osgi.core</artifactId> - <version>${osgi.core.version}</version> - </dependency> - <dependency> - <groupId>org.osgi</groupId> - <artifactId>org.osgi.compendium</artifactId> - <version>${osgi.core.version}</version> - </dependency> - <dependency> - <groupId>org.apache.felix</groupId> - <artifactId>org.osgi.compendium</artifactId> - <version>${apache.felix.compendium}</version> - </dependency> - <dependency> - <groupId>org.opendaylight.dlux</groupId> - <artifactId>loader</artifactId> - <version>${dlux.loader.version}</version> - </dependency> - <dependency> - <groupId>com.highstreet.technologies.odl.dlux</groupId> - <artifactId>mwtnCompare-module</artifactId> - <version>0.5.1-SNAPSHOT</version> - </dependency> - </dependencies> - <build> - <resources> - <resource> - <directory>target/generated-resources</directory> - </resource> - <resource> - <directory>src/main/resources</directory> - </resource> - </resources> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-dependency-plugin</artifactId> - <version>2.6</version> - <executions> - <!--loader Resources --> - <execution> - <id>unpack-loader-resources</id> - <goals> - <goal>unpack-dependencies</goal> - </goals> - <phase>generate-resources</phase> - <configuration> - <outputDirectory>${project.build.directory}/generated-resources</outputDirectory> - <groupId>com.highstreet.technologies.odl.dlux</groupId> - <includeArtifactIds>mwtnCompare-module</includeArtifactIds> - <excludes>META-INF\/**</excludes> - <excludeTransitive>true</excludeTransitive> - <ignorePermissions>false</ignorePermissions> - </configuration> - </execution> - </executions> - </plugin> - <plugin> - <groupId>org.apache.felix</groupId> - <artifactId>maven-bundle-plugin</artifactId> - <extensions>true</extensions> - <configuration> - <instructions> - <Import-Package>org.osgi.service.http, - org.osgi.framework;version="1.0.0", - org.opendaylight.dlux.loader - </Import-Package> - <Export-Package></Export-Package> - </instructions> - </configuration> - </plugin> - - <!-- <plugin> - <artifactId>maven-resources-plugin</artifactId> - <version>3.0.1</version> - <executions> - <execution> - <id>copy-resources</id> - <!- - here the phase you need - -> - <phase>package</phase> - <goals> - <goal>copy-resources</goal> - </goals> - <configuration> - <outputDirectory>../../deploy</outputDirectory> - <resources> - <resource> - <directory>target</directory> - <includes> - <include>${project.artifactId}-${project.version}.jar</include> - </includes> - <filtering>true</filtering> - </resource> - </resources> - </configuration> - </execution> - </executions> - </plugin> --> - - </plugins> - </build> -</project> diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-bundle/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-bundle/src/main/resources/OSGI-INF/blueprint/blueprint.xml deleted file mode 100644 index dae4aa40..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-bundle/src/main/resources/OSGI-INF/blueprint/blueprint.xml +++ /dev/null @@ -1,19 +0,0 @@ -<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"> - <reference id="httpService" availability="mandatory" activation="eager" interface="org.osgi.service.http.HttpService"/> - <reference id="loader" availability="mandatory" activation="eager" interface="org.opendaylight.dlux.loader.DluxModuleLoader"/> - - <bean id="bundle" init-method="initialize" destroy-method="clean" class="org.opendaylight.dlux.loader.DluxModule"> - <property name="httpService" ref="httpService"/> - <property name="loader" ref="loader"/> - <property name="moduleName" value="mwtnCompare"/> - <property name="url" value="/src/app/mwtnCompare"/> - <property name="directory" value="/mwtnCompare"/> - <property name="requireJs" value="app/mwtnCompare/mwtnCompare.module"/> - <property name="angularJs" value="app.mwtnCompare"/> - <property name="cssDependencies"> - <list> - <value>src/app/mwtnCompare/mwtnCompare-custom.css</value> - </list> - </property> - </bean> -</blueprint>
\ No newline at end of file diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/pom.xml b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/pom.xml deleted file mode 100644 index c0de516d..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/pom.xml +++ /dev/null @@ -1,15 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<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> - <artifactId>mwtnCompare</artifactId> - <groupId>com.highstreet.technologies.odl.dlux</groupId> - <version>0.5.1-SNAPSHOT</version> - </parent> - <artifactId>mwtnCompare-module</artifactId> - <name>${prefix} ${project.artifactId}</name> - <packaging>jar</packaging> - - </project>
\ No newline at end of file diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/images/mwtnCompare.png b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/images/mwtnCompare.png Binary files differdeleted file mode 100755 index f4f9c096..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/images/mwtnCompare.png +++ /dev/null diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare-custom.css b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare-custom.css deleted file mode 100644 index 1cab6029..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare-custom.css +++ /dev/null @@ -1,36 +0,0 @@ -/** - * Add your application related css here - * Build: @buildtime@ - */ - -#mwtnCompare .footable > thead > tr > th { - background-color: #428bca; - color: #ffffff; - background-image: none; - border: none; - box-shadow: none; -} - -.connected { - color: lightgreen; -} - -.connected span { - color: lightgreen; -} - -.match { - color: lightgreen; -} - -.match span { - color: lightgreen; -} - -.nowrap { - white-space: nowrap; -} - -.red { - color: red; -}
\ No newline at end of file diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.controller.js b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.controller.js deleted file mode 100644 index e83885a6..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.controller.js +++ /dev/null @@ -1,526 +0,0 @@ -/* - * Copyright (c) 2017 highstreet technologies GmbH and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ - -define(['app/mwtnCompare/mwtnCompare.module', - 'app/mwtnCompare/mwtnCompare.services', - 'app/mwtnCommons/mwtnCommons.services', - 'app/mwtnCompare/mwtnCompare.directives', - 'app/mwtnCommons/bower_components/angular-ui-grid/ui-grid.min'], function(mwtnCompareApp) { - - mwtnCompareApp.register.controller('mwtnCompareCtrl', ['$scope', '$rootScope', '$mwtnCompare', '$mwtnLog', 'orderByFilter', 'OnfNetworkElement', 'MicrowavePhysicalSection', 'MicrowaveSection', - function($scope, $rootScope, $mwtnCompare, $mwtnLog, orderBy, OnfNetworkElement, MicrowavePhysicalSection, MicrowaveSection) { - - $rootScope.section_logo = 'src/app/mwtnCompare/images/mwtnCompare.png'; // Add your topbar logo location here such as 'assets/images/logo_topology.gif' - - var rOnfNe; - var aOnfNe; - - $scope.status = {ne:false}; - $scope.spinner = {ne:false}; - $scope.separator = $mwtnCompare.separator; //' ' - $scope.connectionStatus = 'disconnected'; - $scope.oneATime = true; - $scope.match = { - numberOfLTPs: false, - numberOfLTPsStatus: 'unknown', - radioSignalIds: false, - radioSignalIdsStatus: 'unknown', - mapping: {}, - addActualRadioSignalId: function(rsId) { - if (!this.actualRadioSignalIds) { - this.actualRadioSignalIds = []; - } - if (this.actualRadioSignalIds.contains(rsId)) { - return; - } - this.actualRadioSignalIds.push(rsId); - this.actualRadioSignalIds.sort(); - this.checkRadioSignalIdsStatus(); - }, - clearActualNumberOfLtps: function() { - this.actualNumberOfLtps = undefined; - this.numberOfLTPs = false; - this.numberOfLTPsStatus = this.requiredNumberOfLtps; - }, - clearActualRadioSignalIds: function() { - this.actualRadioSignalIds = undefined; - this.radioSignalIds = false; - this.radioSignalIdsStatus = this.requiredRadioSignalIds; - }, - setRequiredNumberOfLtps: function(rNoLtps) { - this.requiredNumberOfLtps = rNoLtps; - this.checkNumberOfLTPs(); - }, - setRequiredRadioSignalIds: function(rRsIds) { - this.requiredRadioSignalIds = rRsIds.sort(); - this.checkRadioSignalIdsStatus(); - }, - setActualNumberOfLtps: function(aNoLtps) { - this.actualNumberOfLtps = aNoLtps; - this.checkNumberOfLTPs(); - }, - setActualRadioSignalIds: function(aRsIds) { - this.actualRadioSignalIds = aRsIds.sort(); - this.checkRadioSignalIdsStatus(); - }, - checkNumberOfLTPs: function() { - if (!this.requiredNumberOfLtps) { - this.numberOfLTPs = false; - this.numberOfLTPsStatus = 'unknown'; - } else { - if (!this.actualNumberOfLtps) { - this.numberOfLTPs = false; - this.numberOfLTPsStatus = this.requiredNumberOfLtps; - } else { - if (this.requiredNumberOfLtps === this.actualNumberOfLtps) { - this.numberOfLTPs = true; - this.numberOfLTPsStatus = this.requiredNumberOfLtps; - } else { - this.numberOfLTPs = false; - this.numberOfLTPsStatus = ['required:', this.requiredNumberOfLtps, 'does not match actual:',this.actualNumberOfLtps].join(' '); - } - } - } - }, - checkRadioSignalIdsStatus: function() { - if (!this.requiredRadioSignalIds) { - this.radioSignalIds = false; - this.radioSignalIdsStatus = 'unknown'; - } else { - if (!this.actualRadioSignalIds) { - this.radioSignalIds = false; - this.radioSignalIdsStatus = this.requiredRadioSignalIds; - } else { - if (JSON.stringify(this.requiredRadioSignalIds) === JSON.stringify(this.actualRadioSignalIds)) { - this.radioSignalIds = true; - this.radioSignalIdsStatus = this.requiredRadioSignalIds; - } else { - this.radioSignalIds = false; - this.radioSignalIdsStatus = ['required:', this.requiredRadioSignalIds, 'does not match actual:',this.actualRadioSignalIds].join(' '); - } - } - } - } - - }; - - $scope.schema = {initShowObjectCtrl:false}; - $mwtnCompare.getSchema().then(function(data){ - $scope.schema = data; - }); - - var initNodeList = function(nodes){ - $scope.neSelection = []; - if (nodes.length > 0) { - nodes.map(function(ne) { - if (ne._source.onfAirInterfaceRevision) { - $scope.neSelection.push({id:ne._id, revision:ne._source.onfAirInterfaceRevision}); - - } - }); - $scope.neSelection.sort(function(a, b){ - if(a.id < b.id) return -1; - if(a.id > b.id) return 1; - return 0; - }); - } - }; - $scope.requiredNetworkElements = []; - $mwtnCompare.getRequiredNetworkElements(true).then(function(nodes){ - $scope.requiredNetworkElements = nodes; - initNodeList(nodes); - }, function(error){ - $scope.neSelection = []; - $scope.requiredNetworkElements = []; - }); - - $scope.collapseAll = function() { - // close all groups - Object.keys($scope.status).map(function(group){ - $scope.status[group] = false; - }); - Object.keys($scope.spinner).map(function(group){ - $scope.spinner[group] = false; - }); - }; - - - // events - $scope.$watch('selection', function(neId, oldValue) { - if (neId && neId !== '' && neId !== oldValue) { - $scope.collapseAll(); - $scope.connectionStatus = 'disconnected'; - $scope.match.clearActualNumberOfLtps(); - $scope.match.clearActualRadioSignalIds(); - $mwtnCompare.getConnectionStatus(neId).then(function(connectionStatus){ - $scope.connectionStatus = connectionStatus; - // get actual data - if ($scope.connectionStatus === 'connected') { - var key = 'ne'; - var spec = { - nodeId: $scope.selection, - revision: $scope.requiredNetworkElement.onfAirInterfaceRevision, - pacId: key, - }; - $mwtnCompare.getPacParts(spec).then(function(success){ - updatePart(spec, success); - $scope.spinner[key] = false; - }, function(error){ - updatePart(spec, error); - $scope.spinner[key] = false; - }); - } - - },function(error){ - $scope.connectionStatus = 'disconnected'; - }); - - $scope.requiredNetworkElements.map(function(rne){ - console.warn(JSON.stringify(rne._id, neId, rne._id === neId)); - if (rne._id === neId) { - $scope.requiredNetworkElement = rne._source; - rOnfNe = new OnfNetworkElement(rne._source['core-model:network-element']); - $scope.match.setRequiredNumberOfLtps(rOnfNe.getNumberOfLtps()); - // required NE - var rMwpsList = rOnfNe.getLTPMwpsList().map(function(mwpsLtp){ - var key = 'microwave-model:mw-air-interface-pac'; - if ($scope.requiredNetworkElement.onfAirInterfaceRevision.contains('2016')) { - key = 'MicrowaveModel-ObjectClasses-AirInterface:MW_AirInterface_Pac'; - } - var rMwpsList = $scope.requiredNetworkElement[key].map(function(mwps){ - if (mwps.layerProtocol === mwpsLtp.getLayerProtocols()[0].getId()) { - return new MicrowavePhysicalSection(mwps); - } - }); - - if (rMwpsList) { - return rMwpsList.clean(undefined)[0]; - } else { - return {}; - } - }); - - var rRadioSignalIds = rMwpsList.map(function(rMwps){ - return rMwps.getRadioSignalId(); - }); - $scope.match.setRequiredRadioSignalIds(rRadioSignalIds); - } - }); - } - }); - - var getArrayValueToHtml = function(array) { - if (array === undefined) { - return ''; - } - if (array.length > 0 && ($mwtnCompare.getType(array[0]) === 'object' || $mwtnCompare.getType(array[0]) === 'array') ) { - var converted = array.map(function(item){ - if ($mwtnCompare.getType(item) === 'object' && Object.keys(item).length === 2 ) { - return [item[Object.keys(item)[0]], item[Object.keys(item)[1]]].join(':'); - } else { - return JSON.stringify(item); - } - }); - return converted.join('<br/>'); - } else { - return array.join('<br/>'); - } - }; - - var getCompares = function(obj, actualData) { - var compares = []; - - for (var labelId in obj) { - var missingActualValueLabelId = 'not connected'; - var match = false; - - switch (labelId) { - case 'compares': - break; - case 'open': - break; -// case 'nameList': -// var requiredName = obj[labelId][0].value; -// var actualName = ''; -// if (actualData) { -// actualName = actualData[labelId][0].value; -// } -// match = ((requiredName === '' || actualName === '') || (requiredName === actualName)); -// // console.log('NAME', requiredName, actualName, match); -// compares.push({ -// labelId : 'NE name', -// requiredValue : requiredName, -// actualValue : actualName, -// match : match, -// missingActualValueLabelId : missingActualValueLabelId, -//// unit : $scope.schema[labelId].unit, -//// description : $scope.schema[labelId].description, -// showDescriptions : false -// }); -// break; - case '_ltpRefList': - var requiredLtpLength = obj[labelId].length; - var actualLtpLength = ''; - if (actualData) { - actualLtpLength = actualData[labelId].length; - } - match = ((requiredLtpLength === '' || actualLtpLength === '') || (requiredLtpLength === actualLtpLength)); - compares.push({ - labelId : 'numberOfLTPs', - requiredValue : requiredLtpLength, - actualValue : actualLtpLength, - match : match, - missingActualValueLabelId : missingActualValueLabelId, - unit : $scope.schema[labelId].unit, - order: $scope.schema[labelId]['order-number'], - description : $scope.schema[labelId].description, - showDescriptions : false - }); - break; - default: - if (labelId === 'installedCapacity') { - missingActualValueLabelId = '<pure planning value>'; - } - if (labelId === 'timeSlotIDList') { - var requiredTimeSlotIDListLength = obj[labelId].length; - var actualTimeSlotIDListLength = ''; - if (actualData) { - actualTimeSlotIDListLength = actualData[labelId].length; - } - compares.push({ - labelId : 'currentNumberOfTimeSlots', - requiredValue : requiredTimeSlotIDListLength, - actualValue : actualTimeSlotIDListLength, - match : true, - missingActualValueLabelId : missingActualValueLabelId, - unit : $scope.schema[labelId].unit, - order: $scope.schema[labelId]['order-number'], - description : $scope.schema[labelId].description, - showDescriptions : false - }); - } - - switch($mwtnCompare.getType(obj[labelId])) { - case 'object': - if (actualData) { - var withActual = getCompares(obj[labelId], actualData[labelId]); - compares = compares.concat(withActual); - } else { - var withoutActual = getCompares(obj[labelId]); - compares = compares.concat(withoutActual); - } - break; - case 'array': - var requiredDataValue = getArrayValueToHtml(obj[labelId]); - var actualDataValue = ''; - if (actualData) { - actualDataValue = getArrayValueToHtml(actualData[labelId]); - } - match = ((requiredDataValue === '' || actualDataValue === '') || (requiredDataValue === actualDataValue)); - compares.push({ - labelId : labelId, - requiredValue : requiredDataValue, - actualValue : actualDataValue, - match : match, - missingActualValueLabelId : missingActualValueLabelId, - unit : $scope.schema[labelId].unit, - order: $scope.schema[labelId]['order-number'], - description : $scope.schema[labelId].description, - showDescriptions : false - }); - break; - default: - var requiredValue = obj[labelId]; - var actualValue = actualData ? actualData[labelId] : ''; -// // console.log('match'); -// // console.log('match1', requiredValue, (requiredValue === '')); -// // console.log('match2', actualValue, (actualValue === '')); -// // console.log('match3', requiredValue, actualValue, (requiredValue === actualValue)); -// // console.log('match4', (requiredValue === '' || actualValue === '') || (requiredValue === actualValue)); - match = (requiredValue === '' || actualValue === '') || (requiredValue === actualValue); - compares.push({ - labelId : labelId, - requiredValue : requiredValue, - actualValue : actualValue, - match : match, - missingActualValueLabelId : missingActualValueLabelId, - unit : $scope.schema[labelId].unit, - order: $scope.schema[labelId]['order-number'], - description : $scope.schema[labelId].description, - showDescriptions : false - }); - } - } - } - return orderBy(compares, 'order', false); - }; - - var updateNe = function(data) { - - var rne = $scope.requiredNetworkElement; - if (!data) { - rne['core-model:network-element'].compares = getCompares(rne['core-model:network-element']); - return; - } - rne['core-model:network-element'].compares = getCompares(rne['core-model:network-element'], data['core-model:network-element']); - console.error(JSON.stringify(data)); - aOnfNe = new OnfNetworkElement(data['core-model:network-element']); - $scope.match.setActualNumberOfLtps(aOnfNe.getNumberOfLtps()); - var aMwpsList = aOnfNe.getLTPMwpsList().map(function(mwpsLtp){ - - var spec = { - nodeId: $scope.selection, - revision: $scope.requiredNetworkElement.onfAirInterfaceRevision, - pacId: 'microwave-model:mw-air-interface-pac', - layerProtocolId: mwpsLtp.getLayerProtocols()[0].getId(), - partId: 'configuration' - }; - - $mwtnCompare.getPacParts(spec).then(function(success){ - updatePart(spec, success); - }, function(error){ - updatePart(spec, error); - }); - return mwpsLtp._lpList[0].uuid; - }); - // console.log(aMwpsList) - var mwClient = rne['microwave-model:mw-ethernet-container-pac'][0]; - $scope.match.mapping[mwClient.layerProtocol] = aOnfNe.getLTPEthCtpList()[0].getLayerProtocols()[0].getId(); - }; - - var addShowDescriptionEvent = function(obj) { - $scope.$watch(function() { - return obj.showDescriptions; - }, function(newValue, oldValue) { - if (newValue !== oldValue) { - obj.compares.map(function(compare){ - compare.showDescriptions = newValue; - }); - } - }); - }; - - var updateAirInterface = function(spec, data) { - if (!data) { - $scope.requiredNetworkElement['microwave-model:mw-air-interface-pac'].map(function(mwps){ - mwps.compares = getCompares(mwps.airInterfaceConfiguration); - addShowDescriptionEvent(mwps); - }); - } else { - var actual = new MicrowavePhysicalSection(data); - $scope.match.addActualRadioSignalId(actual.getRadioSignalId()); - // console.log(actual.getRadioSignalId()); - $scope.requiredNetworkElement['microwave-model:mw-air-interface-pac'].map(function(mwps){ - var required = new MicrowavePhysicalSection(mwps); - if (actual.getRadioSignalId() === required.getRadioSignalId()) { - $scope.match.mapping[required.getLayerProtocolId()] = actual.getLayerProtocolId(); - var actualData = data.airInterfaceConfiguration; - mwps.compares = getCompares(mwps.airInterfaceConfiguration, actualData); - addShowDescriptionEvent(mwps); - - // MWS mapping - var rMws = rOnfNe.getClientLtpIds(required.getLayerProtocolId()); - var aMws = aOnfNe.getClientLtpIds(actual.getLayerProtocolId()); - // In PoC just a 1:1 relation between MWPS and MWS - $scope.match.mapping[rOnfNe.getLpByLtpRef(rMws[0]).uuid] = aOnfNe.getLpByLtpRef(aMws[0]).uuid; - } - }); - } - }; - - var updateStructure = function(spec, data) { - if (!data) { - $scope.requiredNetworkElement.MW_PureEthernetStructure_Pac.map(function(mws){ - mws.compares = getCompares(mws.pureEthernetStructureConfiguration); - addShowDescriptionEvent(mws); - }); - } else { - $scope.requiredNetworkElement.MW_PureEthernetStructure_Pac.map(function(mws){ - if ($scope.match.mapping[mws.layerProtocol] === data.layerProtocol) { - var actualData = data.pureEthernetStructureConfiguration; - mws.compares = getCompares(mws.pureEthernetStructureConfiguration, actualData); - addShowDescriptionEvent(mws); - } - }); - } - }; - - var updateContainer = function(spec, data) { - // there is only one container in PoCs - var mwClient = $scope.requiredNetworkElement.MW_EthernetContainer_Pac[0]; - if (!data) { - mwClient.compares = getCompares(mwClient.ethernetContainerConfiguration); - addShowDescriptionEvent(mwClient); - } else { - var actualData = data.ethernetContainerConfiguration; - mwClient.compares = getCompares(mwClient.ethernetContainerConfiguration, actualData); - addShowDescriptionEvent(mwClient); - } - }; - - var updatePart = function(spec, data) { - switch (spec.pacId) { - case 'ne': - updateNe(data); - break; - case 'airinterface': - // console.log(JSON.stringify(spec, JSON.stringify(data))); - updateAirInterface(spec, data); - break; - case 'structure': - // console.log(JSON.stringify(data)); - updateStructure(spec, data); - break; - case 'container': - // console.log(JSON.stringify(data)); - updateContainer(spec, data); - break; - } - }; - - $scope.$watch('status', function(status, oldValue) { - Object.keys(status).map(function(key){ - if ($scope.selection && status[key] && status[key] !== oldValue[key]) { - var info = key.split($scope.separator); - var spec = { - nodeId: $scope.selection, - revision: $scope.requiredNetworkElement.onfAirInterfaceRevision, - pacId: info[0], - requiredLayerProtocolId: info[1], - layerProtocolId: $scope.match.mapping[info[1]], - partId: 'Configuration' - }; - - if ($scope.connectionStatus !== 'connected') { - updatePart(spec, undefined); - return; - } - if (info.length > 1 && !$scope.match.mapping[info[1]]) { - updatePart(spec, undefined); - return; - } - - $scope.spinner[key] = true; - $mwtnCompare.getPacParts(spec).then(function(success){ - updatePart(spec, success); - $scope.spinner[key] = false; - }, function(error){ - updatePart(spec, error); - $scope.spinner[key] = false; - }); - - } - }); - }, true); - - - - }]); - - -}); diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.directives.js b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.directives.js deleted file mode 100644 index f5fadd77..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.directives.js +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (c) 2016 highstreet technologies GmbH and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ - -define([ 'app/mwtnCompare/mwtnCompare.module' ], function(mwtnCompareApp) { - - mwtnCompareApp.register.directive('compare', function() { - return { - restrict : 'A', - scope: { - item: '=compare' - }, - templateUrl : 'src/app/mwtnCompare/templates/compare.tpl.html' - }; - }); - -});
\ No newline at end of file diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.module.js b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.module.js deleted file mode 100644 index e3761f36..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.module.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) 2016 highstreet technologies GmbH and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ - -define(['angularAMD', 'app/routingConfig', 'app/core/core.services', 'common/config/env.module'], function(ng) { - var mwtnCompareApp = angular.module('app.mwtnCompare', ['app.core', 'ui.router.state','config', 'pascalprecht.translate']); - - mwtnCompareApp.config(function($stateProvider, $compileProvider, $controllerProvider, $provide, NavHelperProvider, $translateProvider) { - mwtnCompareApp.register = { - controller : $controllerProvider.register, - directive : $compileProvider.directive, - factory : $provide.factory, - service : $provide.service - - }; - - - NavHelperProvider.addControllerUrl('app/mwtnCompare/mwtnCompare.controller'); - NavHelperProvider.addToMenu('mwtnCompare', { - "link" : "#/pnfCompare/", - "active" : "main.mwtnCompare", - "title" : "pnf Compare", - "icon" : "fa fa-tags", // Add navigation icon css class here - "page" : { - "title" : "pnf Compare", - "description" : "mwtnCompare" - } - }); - - var access = routingConfig.accessLevels; - - $stateProvider.state('main.mwtnCompare', { - url: 'pnfCompare/:nodeId', - access: access.admin, - views : { - 'content' : { - templateUrl: 'src/app/mwtnCompare/mwtnCompare.tpl.html', - controller: 'mwtnCompareCtrl' - } - } - }); - - }); - - return mwtnCompareApp; -}); diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.services.js b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.services.js deleted file mode 100644 index 9a133e3b..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.services.js +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (c) 2016 highstreet technologies GmbH and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ - -define(['app/mwtnCompare/mwtnCompare.module'],function(mwtnCompareApp) { - - mwtnCompareApp.register.factory('$mwtnCompare', function($mwtnCommons, $mwtnDatabase) { - - var service = {}; - - service.getConnectionStatus = $mwtnCommons.getConnectionStatus; - service.getPacParts = $mwtnCommons.getPacParts; - service.getRequiredNetworkElements = $mwtnCommons.getRequiredNetworkElements; - service.getSchema = $mwtnDatabase.getSchema; - service.getType = $mwtnCommons.getType; - service.separator = $mwtnCommons.separator; - - - return service; - }); - -}); diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.tpl.html b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.tpl.html deleted file mode 100644 index b3601ec2..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/mwtnCompare.tpl.html +++ /dev/null @@ -1,333 +0,0 @@ -<ht-header help-link='sdnr/mwtnCompare/0.4.0/README.md'></ht-header> -<div id="mwtnCompare"> - <div class="owl container" style="width: 100%"> - <div class="row" ng-show="neSelection.length === 0"> - <p> - <span>{{ 'MWTN_NO_DEVICES_CONNECTED' | translate }}</span> - <span>Please check</span> - <a href="#/mwtnConnect" class="white"> - <span>MWTN Connect</span> - </a> - <span>.</span> - </p> - </div> - <div class="row" ng-show="neSelection.length > 0"> - <div class="col-md-2 text-right radio"> - <span class="white">{{'Select planned NetworkElement' | translate}}</span> - </div> - <div class="col-md-4"> - <div class="form-group"> - - <input list="networkElements" class="form-control" ng-model="selection"> - <datalist id="networkElements"> - <option ng-repeat="ne in neSelection" value="{{ne.id}}">{{ne.id}}</option> - </datalist> - - </div> - </div> - <div class="col-md-2 text-right"> - <span class="white" ng-class="{'connected':connectionStatus === 'connected'}">{{'MWTN_CONNECTIONSTATUS' | translate}}: </span><br/> - <span class="white" ng-class="{'match':match.numberOfLTPs}">{{'MWTN_NUMBEROFLTPS' | translate}}: </span><br/> - <span class="white" ng-class="{'match':match.radioSignalIds}">{{'MWTN_RADIOSIGNALIDS' | translate}}: </span> - </div> - <div class="col-md-2"> - <a href="#/mwtnConnect"> - <i ng-show="connectionStatus === 'connected'" class="fa fa-link" aria-hidden="true" ng-class="{'connected':connectionStatus === 'connected'}"></i> - <span class="white" ng-class="{'connected':connectionStatus === 'connected'}">{{connectionStatus}}</span> - </a><br/> - <i ng-class="{'match':match.numberOfLTPs}" ng-show="match.numberOfLTPs" class="fa fa-check-square-o" aria-hidden="true"></i> - <span class="white" ng-class="{'match':match.numberOfLTPs}">{{match.numberOfLTPsStatus}}</span><br/> - <i ng-class="{'match':match.radioSignalIds}" ng-show="match.radioSignalIds" class="fa fa-check-square-o" aria-hidden="true"></i> - <span class="white" ng-class="{'match':match.radioSignalIds}">{{match.radioSignalIdsStatus}}</span> - </div> - <div class="col-md-2 text-right"> - <div class="form-group"> - <button type="button" class="btn btn-default" ng-click="collapseAll()">{{'Collapse all' | translate}}</button> - </div> - </div> - - </div> - </div> - <div class="owl container" style="width: 100%"> - <hr/> - <div class="row"> - <div class="col-md-12"> - <uib-accordion close-others="oneATime"> - - <div uib-accordion-group class="panel-primary" is-open="status.ne"> - <uib-accordion-heading> - <i class="pull-left fa" ng-class="{'fa-chevron-down': status.ne, 'fa-chevron-right': !status.ne}"></i> - <span>{{'MWTN_NETWORKELEMENT' | translate}} '{{requiredNetworkElement['core-model:network-element'].nameList[0].value}}'</span> - <i class="pull-right fa fa-spinner fa-pulse" ng-show="spinner.ne"></i> - </uib-accordion-heading> -<pre>{{requiredNetworkElement | json}}</pre> - - <table class="table"> - <tr> - <td> - <table class="footable table table-hover"> - <thead> - <tr> - <th class="nowrap">{{ 'Label' | translate }}</th> - <th class="nowrap">{{ 'Required value' | translate }}</th> - <th class="nowrap">{{ 'Actual value' | translate }}</th> - <th>{{ 'Unit' | translate }}</th> - <th ng-show="mwps.showDescriptions">{{ 'Description' | translate }}</th> - </tr> - </thead> - <tbody> - <tr ng-repeat="compare in requiredNetworkElement['core-model:network-element'].compares" compare="compare"></tr> - </tbody> - </table> - </td> - <td> - <h4 style="color: #444444;"> - <b>NetworkElement</b> - </h4> - <p>{{ schema['NetworkElement'].description }}</p> - </td> - </tr> - </table> - </div> - - <div ng-repeat="mwps in requiredNetworkElement.MW_AirInterface_Pac" uib-accordion-group class="panel-primary" is-open="status['airinterface' + separator + mwps.layerProtocol]"> - <uib-accordion-heading> - <i class="pull-left fa" ng-class="{'fa-chevron-down': status[['airinterface', mwps.layerProtocol].join(separator)], 'fa-chevron-right': !status['airinterface' + separator + airinterface.layerProtocol]}"></i> - <span>AirInterface MWPS '{{mwps.layerProtocol}}'</span> - <i class="pull-right fa fa-spinner fa-pulse" ng-show="spinner[['airinterface', mwps.layerProtocol].join(separator)]"></i> - </uib-accordion-heading> - - <div class="text-right"> - <a style="cursor: pointer;" ng-click="mwps.showDescriptions = !mwps.showDescriptions"> - <span ng-show="mwps.showDescriptions" style="color: #444444">Hide </span> - <span ng-show="!mwps.showDescriptions" style="color: #444444">Show </span> - <span style="color: #444444"> descriptions</span> - </a> - </div> - - <table class="table" ng-show="mwps.showDescriptions"> - <tr> - - <td style="width: 50%"> - <div ng-repeat="item in ['LogicalTerminationPoint', 'LayerProtocol', 'MW_AirInterface_Pac']"> - <h4 style="color: #444444;"> - <b>{{item}}</b> - </h4> - {{schema[item].description}} - </div> - </td> - <td style="width: 50%"> - <h4 style="color: #444444;"> - <b>AirInterfaceConfiguration</b> - </h4> - {{schema['AirInterfaceConfiguration'].description}} - </td> - - </tr> - </table> - - - <table class="footable table table-hover"> - <thead> - <tr> - <th>{{ 'Label' | translate }}</th> - <th>{{ 'Required value' | translate }}</th> - <th>{{ 'Actual value' | translate }}</th> - <th>{{ 'Unit' | translate }}</th> - <th ng-show="mwps.showDescriptions">{{ 'Description' | translate }}</th> - </tr> - </thead> - <tbody> - <tr ng-repeat="compare in mwps.compares" compare="compare"></tr> - </tbody> - <tfoot> - <tr> - <td colspan="99" ng-class="text-center"> - <button class="btn btn-default" title="Operation to planning" ng-click="message('operation2Planning', mwps)"> - <i class="icon-forward"></i> - </button> - <button class="btn btn-default" title="Planning to operation" ng-click="message('planning2Operation', mwps)"> - <i class="icon-backward"></i> - </button> - </td> - </tr> - </tfoot> - </table> - - </div> - - <div ng-repeat="mws in requiredNetworkElement.MW_PureEthernetStructure_Pac" uib-accordion-group class="panel-primary" heading="" - is-open="status['structure' + separator + mws.layerProtocol]"> - <uib-accordion-heading> - <i class="pull-left fa" ng-class="{'fa-chevron-down': status[['structure', mws.layerProtocol].join(separator)], 'fa-chevron-right': !status['structure' + separator + structure.layerProtocol]}"></i> - <span>Structure MWS '{{mws.layerProtocol}}'</span> - <i class="pull-right fa fa-spinner fa-pulse" ng-show="spinner[['structure', mws.layerProtocol].join(separator)]"></i> - </uib-accordion-heading> - - <div class="text-right"> - <a style="cursor: pointer;" ng-click="mws.showDescriptions = !mws.showDescriptions"> - <span ng-show="mws.showDescriptions" style="color: #444444">Hide </span> - <span ng-show="!mws.showDescriptions" style="color: #444444">Show </span> - <span style="color: #444444"> descriptions</span> - </a> - </div> - - <table class="table" ng-show="mws.showDescriptions"> - <tr> - - <td style="width: 50%"> - <div ng-repeat="item in ['LogicalTerminationPoint', 'LayerProtocol', 'MW_PureEthernetStructure_Pac']"> - <h4 style="color: #444444;"> - <b>{{item}}</b> - </h4> - {{schema[item].description}} - </div> - </td> - <td style="width: 50%"> - <h4 style="color: #444444;"> - <b>PureEthernetStructureConfiguration</b> - </h4> - {{schema['PureEthernetStructureConfiguration'].description}} - </td> - - </tr> - </table> - <table class="footable table table-hover"> - <thead> - <tr> - <th>{{ 'Label' | translate }}</th> - <th>{{ 'Required value' | translate }}</th> - <th>{{ 'Actual value' | translate }}</th> - <th>{{ 'Unit' | translate }}</th> - <th ng-show="mws.showDescriptions">{{ 'Description' | translate }}</th> - </tr> - </thead> - <tbody> - <tr ng-repeat="compare in mws.compares" compare="compare"></tr> - </tbody> - <tfoot> - <tr> - <td colspan="99" ng-class="text-center"> - <button class="btn btn-default" title="Operation to planning" ng-click="message('operation2Planning', mws)"> - <i class="icon-forward"></i> - </button> - <button class="btn btn-default" title="Planning to operation" ng-click="message('planning2Operation', mws)"> - <i class="icon-backward"></i> - </button> - </td> - </tr> - </tfoot> - </table> - </div> - - <div ng-repeat="mwClient in requiredNetworkElement.MW_EthernetContainer_Pac" uib-accordion-group class="panel-primary" is-open="status['container' + separator + mwClient.layerProtocol]"> - <uib-accordion-heading> - <i class="pull-left fa" ng-class="{'fa-chevron-down': status[['container', mwClient.layerProtocol].join(separator)], 'fa-chevron-right': !status['container' + separator + container.layerProtocol]}"></i> - <span>Container ETH '{{mwClient.layerProtocol}}'</span> - <i class="pull-right fa fa-spinner fa-pulse" ng-show="spinner[['container', mwClient.layerProtocol].join(separator)]"></i> - </uib-accordion-heading> - - <div class="text-right"> - <a style="cursor: pointer;" ng-click="mwClient.showDescriptions = !mwClient.showDescriptions"> - <span ng-show="mwClient.showDescriptions" style="color: #444444">Hide </span> - <span ng-show="!mwClient.showDescriptions" style="color: #444444">Show </span> - <span style="color: #444444"> descriptions</span> - </a> - </div> - <table class="table" ng-show="mwClient.showDescriptions"> - <tr> - <td style="width: 50%"> - <div ng-repeat="item in ['LogicalTerminationPoint', 'LayerProtocol', 'MW_EthernetContainer_Pac']"> - <h4 style="color: #444444;"> - <b>{{item}}</b> - </h4> - {{schema[item].description}} - </div> - </td> - <td style="width: 50%"> - <div ng-repeat="item in ['EthernetContainerConfiguration', 'ethernetContainerConfiguration']"> - <h4 style="color: #444444;"> - <b>{{item}}</b> - </h4> - {{schema[item].description}} - </div> - </td> - </tr> - </table> - - <table class="footable table table-hover"> - <thead> - <tr> - <th>{{ 'Label' | translate }}</th> - <th>{{ 'Required value' | translate }}</th> - <th>{{ 'Actual value' | translate }}</th> - <th>{{ 'Unit' | translate }}</th> - <th ng-show="mwClient.showDescriptions">{{ 'Description' | translate }}</th> - </tr> - </thead> - </tbody> - <tr ng-repeat="compare in mwClient.compares" compare="compare"></tr> - </tbody> - <tfoot> - <tr> - <td colspan="99" ng-class="text-center"> - <button class="btn btn-default" title="Operation to planning" ng-click="message('operation2Planning', mwClient)"> - <i class="icon-forward"></i> - </button> - <button class="btn btn-default" title="Planning to operation" ng-click="message('planning2Operation', mwClient)"> - <i class="icon-backward"></i> - </button> - </td> - </tr> - </tfoot> - </table> - </div> - - </uib-accordion> - </div> - </div> - </div> - - <div class="container" style="width: 100%"> - <div class="row"> - <uib-accordion close-others="oneAtATime"> - <div uib-accordion-group panel-class="panel-odl" ng-repeat="ne in referenceValues.network.networkElement" is-open="ne.open"> - <uib-accordion-heading> - <i class="pull-left" ng-class="{'icon-angle-down': ne.open, 'icon-angle-right': !ne.open}"></i> <span>Network element: </span> <b>"{{ne.name}}"</b> </uib-accordion-heading> - <accordion close-others="oneAtATime"> - <div uib-accordion-group panel-class="panel-odl" is-open="ne['core-model:network-element'][0].open"> - <uib-accordion-heading> - <i class="pull-left" ng-class="{'icon-angle-down': ne['core-model:network-element'][0].open, 'icon-angle-right': !ne['core-model:network-element'][0].open}"></i> <span> - {{ 'Network element' | translate}} - <span></uib-accordion-heading> -1 - - - -</div> <div uib-accordion-group panel-class="panel-odl" ng-repeat="mwps in ne.MW_AirInterface_Pac" is-open="mwps.open"> <uib-accordion-heading> -<i class="pull-left" ng-class="{'icon-angle-down': mwps.open, 'icon-angle-right': !mwps.open}"></i> <span> - LTP ({{mwps.layerProtocol}}) - <span></uib-accordion-heading> - - - </div> - <div uib-accordion-group panel-class="panel-odl" ng-repeat="mws in ne.MW_PureEthernetStructure_Pac" is-open="mws.open"> <uib-accordion-heading> - <i class="pull-left" ng-class="{'icon-angle-down': mws.open, 'icon-angle-right': !mws.open}"></i> <span> - LTP ({{mws.layerProtocol}}) - <span></uib-accordion-heading> - - - </div> - <div uib-accordion-group panel-class="panel-odl" ng-repeat="mwClient in ne.MW_EthernetContainer_Pac" is-open="mwClient.open"> <uib-accordion-heading> - <i class="pull-left" ng-class="{'icon-angle-down': mwClient.open, 'icon-angle-right': !mwClient.open}"></i> <span> - LTP ({{mwClient.layerProtocol}}) - <span></uib-accordion-heading> - </div> - </uib-accordion> - <div> -</div> -</div> -<hr /> -<div class="owl"> - <span class="white">ONAP SDN-R | ONF Wireless for @distversion@ - Build: @buildtime@</span> - </div>
\ No newline at end of file diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/templates/compare.tpl.html b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/templates/compare.tpl.html deleted file mode 100644 index c5cbc50a..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/mwtnCompare-module/src/main/resources/mwtnCompare/templates/compare.tpl.html +++ /dev/null @@ -1,12 +0,0 @@ -<td style="text-align: right;" ng-class="{ 'red': !item.match }">{{['mwtn', item.labelId].join('_').toUpperCase() | translate}}</td> -<td><b ng-class="{ 'red': !item.match }" ng-bind-html="item.requiredValue"></b></td> - -<td> - <!-- [sko]: Bug reported by Amy: Of cause item.actualValue === false does not mean "missing" - <b ng-show="!item.actualValue">{{ item.missingActualValueLabelId | translate }}</b> --> - <b ng-class="{ 'red': !item.match }" ng-bind-html="item.actualValue"></b> -</td> -<td>{{ item.unit }}</td> -<td style="max-width: 300px;" ng-show="item.showDescriptions"> - {{item.description}} -</td>
\ No newline at end of file diff --git a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/pom.xml b/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/pom.xml deleted file mode 100644 index 75cedab1..00000000 --- a/sdnr/wireless-transport/code-Carbon-SR1/ux/mwtnCompare/pom.xml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<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/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <artifactId>mwtn</artifactId> - <groupId>com.highstreet.technologies.odl.dlux</groupId> - <version>0.5.1-SNAPSHOT</version> - </parent> - <packaging>pom</packaging> - <groupId>com.highstreet.technologies.odl.dlux</groupId> - <artifactId>mwtnCompare</artifactId> - <version>0.5.1-SNAPSHOT</version> - <name>${prefix} ${project.artifactId}</name> - - <prerequisites> - <maven>3.0</maven> - </prerequisites> - - <modules> - <module>mwtnCompare-module</module> - <module>mwtnCompare-bundle</module> - </modules> -</project>
\ No newline at end of file |