| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you 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 |
| |
| https://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. |
| --> |
| <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.apache.plc4x</groupId> |
| <artifactId>plc4x-protocols</artifactId> |
| <version>0.10.0</version> |
| </parent> |
| |
| <artifactId>plc4x-protocols-knxnetip</artifactId> |
| |
| <name>Protocols: KNXNet/IP</name> |
| <description>Base protocol specifications for the KNXNet/IP protocol</description> |
| |
| <build> |
| <plugins> |
| <!-- Fetch the master-data which will be used to translate manufacturer ids to readable names --> |
| <!-- |
| We're intentionally not using the download plugin as this would either download only once |
| and not get any updates or it would try downloading for every build. This however might result |
| in getting banned on the KNX server. |
| |
| So this script makes sure the knx-master-data.xml is updated at most every 24h |
| --> |
| <plugin> |
| <groupId>org.codehaus.gmaven</groupId> |
| <artifactId>groovy-maven-plugin</artifactId> |
| <version>2.1.1</version> |
| <executions> |
| <!-- Do some pre-build checks and report any findings to the user --> |
| <execution> |
| <id>fetch-knx-manufacturer-data</id> |
| <phase>generate-resources</phase> |
| <goals> |
| <goal>execute</goal> |
| </goals> |
| <configuration> |
| <source>${project.basedir}/src/main/script/getKnxMasterData.groovy</source> |
| </configuration> |
| </execution> |
| </executions> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.groovy</groupId> |
| <artifactId>groovy</artifactId> |
| <version>${groovy.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>xml-maven-plugin</artifactId> |
| <version>1.0.2</version> |
| <executions> |
| <execution> |
| <phase>process-resources</phase> |
| <goals> |
| <goal>transform</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <transformationSets> |
| <transformationSet> |
| <dir>${project.build.directory}/downloads</dir> |
| <includes>*.xml</includes> |
| <stylesheet>src/main/xslt/knx-types.xsl</stylesheet> |
| <outputDir>${project.build.outputDirectory}/protocols/knxnetip</outputDir> |
| <fileMappers> |
| <fileMapper implementation="org.codehaus.plexus.components.io.filemappers.FileExtensionMapper"> |
| <targetExtension>.mspec</targetExtension> |
| </fileMapper> |
| </fileMappers> |
| </transformationSet> |
| </transformationSets> |
| </configuration> |
| <dependencies> |
| <dependency> |
| <groupId>net.sf.saxon</groupId> |
| <artifactId>Saxon-HE</artifactId> |
| <version>11.4</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.plc4x</groupId> |
| <artifactId>plc4x-code-generation-protocol-base-mspec</artifactId> |
| <version>0.10.0</version> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| </dependency> |
| |
| <!-- Generally used for the metadata generator to not pollute the classpath --> |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpclient</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.json</groupId> |
| <artifactId>json</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-lang3</artifactId> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-compress</artifactId> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| </project> |