Switched to Gradle as build system
This commit is contained in:
parent
da36be0862
commit
a49cb55b93
34 changed files with 136 additions and 1021 deletions
15
.classpath
15
.classpath
|
|
@ -1,15 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<classpath>
|
|
||||||
<classpathentry kind="src" path="src"/>
|
|
||||||
<classpathentry kind="src" path="test"/>
|
|
||||||
<classpathentry kind="src" path="plugins/tellstick/src"/>
|
|
||||||
<classpathentry kind="src" path="plugins/tellstick/test"/>
|
|
||||||
<classpathentry kind="src" path="plugins/zwave/src"/>
|
|
||||||
|
|
||||||
<classpathentry kind="lib" path="lib/*"/>
|
|
||||||
<classpathentry kind="src" path="plugins/zwave/lib/*"/>
|
|
||||||
|
|
||||||
|
|
||||||
<classpathentry combineaccessrules="false" kind="src" path="/zutil-java"/>
|
|
||||||
<classpathentry kind="output" path="build"/>
|
|
||||||
</classpath>
|
|
||||||
12
.gitignore
vendored
12
.gitignore
vendored
|
|
@ -1,8 +1,12 @@
|
||||||
/screenlog.0*
|
# Configuration and dependencies
|
||||||
/hal.conf
|
/hal.conf
|
||||||
/hal.db*
|
/hal.db*
|
||||||
build
|
|
||||||
/lib/zutil-*
|
/lib/zutil-*
|
||||||
|
|
||||||
|
# Runtime files
|
||||||
|
/screenlog.0*
|
||||||
/OZW_Log.txt
|
/OZW_Log.txt
|
||||||
/zwscene.xml
|
|
||||||
/zwcfg*.xml
|
# Build and Ide files
|
||||||
|
build
|
||||||
|
.gradle
|
||||||
|
|
|
||||||
17
.project
17
.project
|
|
@ -1,17 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<projectDescription>
|
|
||||||
<name>hal</name>
|
|
||||||
<comment></comment>
|
|
||||||
<projects>
|
|
||||||
</projects>
|
|
||||||
<buildSpec>
|
|
||||||
<buildCommand>
|
|
||||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
|
||||||
<arguments>
|
|
||||||
</arguments>
|
|
||||||
</buildCommand>
|
|
||||||
</buildSpec>
|
|
||||||
<natures>
|
|
||||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
|
||||||
</natures>
|
|
||||||
</projectDescription>
|
|
||||||
80
Hal.iml
80
Hal.iml
|
|
@ -1,80 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<module type="JAVA_MODULE" version="4">
|
|
||||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
|
||||||
<exclude-output />
|
|
||||||
<content url="file://$MODULE_DIR$">
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/resource" type="java-resource" relativeOutputPath="resource" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-zwave/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-tellstick/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-tellstick/test" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-raspberry/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-zigbee/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-zwave/test" isTestSource="true" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-mqtt/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-nutups/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-netscan/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-powerchallenge/src" isTestSource="false" />
|
|
||||||
<sourceFolder url="file://$MODULE_DIR$/plugins/hal-powerchallenge/resource" type="java-resource" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-mqtt/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-netscan/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-nutups/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-powerchallenge/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-raspberry/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-tellstick/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-zigbee/build" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/plugins/hal-zwave/build" />
|
|
||||||
</content>
|
|
||||||
<orderEntry type="inheritedJdk" />
|
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
|
||||||
<orderEntry type="module" module-name="Zutil" />
|
|
||||||
<orderEntry type="module-library" exported="">
|
|
||||||
<library>
|
|
||||||
<CLASSES>
|
|
||||||
<root url="file://$MODULE_DIR$/plugins/hal-raspberry/lib" />
|
|
||||||
</CLASSES>
|
|
||||||
<JAVADOC />
|
|
||||||
<SOURCES />
|
|
||||||
<jarDirectory url="file://$MODULE_DIR$/plugins/hal-raspberry/lib" recursive="false" />
|
|
||||||
</library>
|
|
||||||
</orderEntry>
|
|
||||||
<orderEntry type="module-library" exported="">
|
|
||||||
<library>
|
|
||||||
<CLASSES>
|
|
||||||
<root url="file://$MODULE_DIR$/plugins/hal-zwave/lib" />
|
|
||||||
</CLASSES>
|
|
||||||
<JAVADOC />
|
|
||||||
<SOURCES />
|
|
||||||
<jarDirectory url="file://$MODULE_DIR$/plugins/hal-zwave/lib" recursive="false" />
|
|
||||||
</library>
|
|
||||||
</orderEntry>
|
|
||||||
<orderEntry type="module-library" scope="TEST">
|
|
||||||
<library name="JUnit4">
|
|
||||||
<CLASSES>
|
|
||||||
<root url="jar://$APPLICATION_HOME_DIR$/lib/junit-4.12.jar!/" />
|
|
||||||
<root url="jar://$APPLICATION_HOME_DIR$/lib/hamcrest-core-1.3.jar!/" />
|
|
||||||
</CLASSES>
|
|
||||||
<JAVADOC />
|
|
||||||
<SOURCES />
|
|
||||||
</library>
|
|
||||||
</orderEntry>
|
|
||||||
<orderEntry type="module-library" exported="">
|
|
||||||
<library name="lib">
|
|
||||||
<CLASSES>
|
|
||||||
<root url="file://$MODULE_DIR$/lib" />
|
|
||||||
</CLASSES>
|
|
||||||
<JAVADOC />
|
|
||||||
<NATIVE>
|
|
||||||
<root url="file://$MODULE_DIR$/lib" />
|
|
||||||
</NATIVE>
|
|
||||||
<SOURCES>
|
|
||||||
<root url="jar://$USER_HOME$/.ideaLibSources/wzwave-0.0.3-sources.jar!/" />
|
|
||||||
<root url="jar://$USER_HOME$/.ideaLibSources/netty-all-4.0.46.Final-sources.jar!/" />
|
|
||||||
</SOURCES>
|
|
||||||
<jarDirectory url="file://$MODULE_DIR$/lib" recursive="false" />
|
|
||||||
</library>
|
|
||||||
</orderEntry>
|
|
||||||
</component>
|
|
||||||
</module>
|
|
||||||
15
Jenkinsfile
vendored
15
Jenkinsfile
vendored
|
|
@ -3,28 +3,27 @@ node {
|
||||||
// Configure environment
|
// Configure environment
|
||||||
env.JAVA_HOME = tool name: 'jdk8'
|
env.JAVA_HOME = tool name: 'jdk8'
|
||||||
env.REPO_URL = "repo.koc.se/hal.git" //scm.getUserRemoteConfigs()[0].getUrl()
|
env.REPO_URL = "repo.koc.se/hal.git" //scm.getUserRemoteConfigs()[0].getUrl()
|
||||||
env.BUILD_NAME = "BUILD-" + env.BUILD_ID
|
env.BUILD_NAME = "BUILD-${env.BUILD_ID}"
|
||||||
|
|
||||||
|
|
||||||
checkout scm
|
checkout scm
|
||||||
|
|
||||||
stage('Build') {
|
stage('Build') {
|
||||||
sh 'ant clean'
|
sh './gradlew clean'
|
||||||
sh 'ant build-all'
|
sh './gradle build'
|
||||||
}
|
}
|
||||||
|
|
||||||
stage('Test') {
|
stage('Test') {
|
||||||
try {
|
try {
|
||||||
sh 'ant test-all'
|
sh './gradlew test'
|
||||||
} finally {
|
} finally {
|
||||||
step([$class: 'JUnitResultArchiver', testResults: 'build/reports/*.xml'])
|
step([$class: 'JUnitResultArchiver', testResults: 'build/test-results/test/*.xml'])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
stage('Package') {
|
stage('Package') {
|
||||||
sh 'ant package-all'
|
sh './gradlew distZip'
|
||||||
archiveArtifacts artifacts: 'build/release/**', fingerprint: true
|
archiveArtifacts artifacts: 'build/distributions/Hal.zip', fingerprint: true
|
||||||
|
|
||||||
// Tag artifact
|
// Tag artifact
|
||||||
withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'f8e5f6c6-4adb-4ab2-bb5d-1c8535dff491',
|
withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'f8e5f6c6-4adb-4ab2-bb5d-1c8535dff491',
|
||||||
|
|
|
||||||
81
build.gradle
Normal file
81
build.gradle
Normal file
|
|
@ -0,0 +1,81 @@
|
||||||
|
plugins {
|
||||||
|
id 'java'
|
||||||
|
id 'application'
|
||||||
|
}
|
||||||
|
|
||||||
|
allprojects {
|
||||||
|
apply plugin: 'java'
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
mavenLocal()
|
||||||
|
mavenCentral()
|
||||||
|
jcenter()
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation 'se.koc:zutil:1.0.253'
|
||||||
|
|
||||||
|
testImplementation 'junit:junit:4.12'
|
||||||
|
testImplementation 'org.hamcrest:hamcrest-core:2.2'
|
||||||
|
}
|
||||||
|
|
||||||
|
sourceSets {
|
||||||
|
main {
|
||||||
|
java {
|
||||||
|
srcDirs 'src'
|
||||||
|
}
|
||||||
|
resources {
|
||||||
|
srcDir 'resource'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
test {
|
||||||
|
java {
|
||||||
|
srcDirs 'test'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------
|
||||||
|
// Hal core configuration
|
||||||
|
// ------------------------------------
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
implementation 'org.xerial:sqlite-jdbc:3.32.3.2'
|
||||||
|
}
|
||||||
|
|
||||||
|
sourceSets {
|
||||||
|
main {
|
||||||
|
java {
|
||||||
|
exclude 'se/hal/SpeechManager.java'
|
||||||
|
exclude 'se/hal/tts/**'
|
||||||
|
exclude 'se/hal/bot/**'
|
||||||
|
exclude 'se/hal/stt/**'
|
||||||
|
}
|
||||||
|
resources {
|
||||||
|
exclude 'bots/**'
|
||||||
|
exclude 'marytts/**'
|
||||||
|
exclude 'sphinx-models/**'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
distributions {
|
||||||
|
main {
|
||||||
|
contents {
|
||||||
|
from 'hal.conf.example'
|
||||||
|
from 'hal-default.db'
|
||||||
|
from 'logging.properties'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ------------------------------------
|
||||||
|
// Hal plugin common configuration
|
||||||
|
// ------------------------------------
|
||||||
|
|
||||||
|
subprojects {
|
||||||
|
dependencies {
|
||||||
|
implementation project(':')
|
||||||
|
}
|
||||||
|
}
|
||||||
200
build.xml
200
build.xml
|
|
@ -1,200 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project name="Hal" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
<property name="resourceDir" value="${root}/resource" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="${buildRoot}/reports" />
|
|
||||||
<property name="releaseJar" value="hal.jar" />
|
|
||||||
<property name="zutilVersion" value="1.0.251" />
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ________________________ CLASSPATH ________________________ -->
|
|
||||||
|
|
||||||
<!--define standard arguments for javac-->
|
|
||||||
<presetdef name="javac">
|
|
||||||
<javac includeantruntime="false" />
|
|
||||||
</presetdef>
|
|
||||||
|
|
||||||
<!--classpath included when building-->
|
|
||||||
<path id="classpath.build">
|
|
||||||
<fileset dir="${libDir}">
|
|
||||||
<include name="**/*.jar"/>
|
|
||||||
</fileset>
|
|
||||||
<pathelement location="${compileDir}" />
|
|
||||||
</path>
|
|
||||||
|
|
||||||
<path id="classpath.test">
|
|
||||||
<pathelement location="${compileTestDir}" />
|
|
||||||
<!--include libraries used for building-->
|
|
||||||
<path refid="classpath.build"/>
|
|
||||||
</path>
|
|
||||||
|
|
||||||
<!-- ________________________ EXECUTION TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<target name="run" depends="package-all">
|
|
||||||
<java fork="true" failonerror="true" classname="se.hal.HalServer">
|
|
||||||
<classpath>
|
|
||||||
<pathelement path="${releaseDir}/${releaseJar}"/>
|
|
||||||
<pathelement path="${releaseDir}/plugins/*"/>
|
|
||||||
<pathelement path="${releaseDir}/lib/*"/>
|
|
||||||
</classpath>
|
|
||||||
</java>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="debug-remote" depends="package">
|
|
||||||
<java fork="true" failonerror="true" classname="se.hal.HalServer">
|
|
||||||
<jvmarg value="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005" />
|
|
||||||
<classpath>
|
|
||||||
<pathelement path="${releaseDir}/${releaseJar}"/>
|
|
||||||
<pathelement path="${libDir}/*"/> <!--wildcard may not be platform independent, ok?-->
|
|
||||||
</classpath>
|
|
||||||
</java>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<!-- Test targets -->
|
|
||||||
<target name="test-all" depends="test,test-plugins" />
|
|
||||||
|
|
||||||
<target name="test" depends="build-test">
|
|
||||||
<mkdir dir="${reportsDir}" />
|
|
||||||
<junit printsummary="yes" haltonfailure="false" fork="true">
|
|
||||||
<classpath refid="classpath.test" />
|
|
||||||
<formatter type="plain" usefile="false" /> <!-- to screen -->
|
|
||||||
<formatter type="xml" /> <!-- to file -->
|
|
||||||
|
|
||||||
<batchtest todir="${reportsDir}" skipNonTests="true">
|
|
||||||
<fileset dir="${compileTestDir}" includes="**/*Test*.class" />
|
|
||||||
</batchtest>
|
|
||||||
</junit>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="test-plugins" depends="build-test">
|
|
||||||
<subant target="test" verbose="true">
|
|
||||||
<fileset dir="plugins/" includes="*/build.xml"/>
|
|
||||||
</subant>
|
|
||||||
</target>
|
|
||||||
<!-- ________________________ BUILD TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<!-- clean all build paths -->
|
|
||||||
<target name="clean">
|
|
||||||
<delete includeemptydirs="true" failonerror="false">
|
|
||||||
<fileset dir="${buildRoot}" includes="**/*"/>
|
|
||||||
</delete>
|
|
||||||
<!-- clean plugins -->
|
|
||||||
<subant target="clean" verbose="true">
|
|
||||||
<fileset dir="plugins/" includes="*/build.xml"/>
|
|
||||||
</subant>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- build product code -->
|
|
||||||
<target name="build-all" depends="build,build-plugins" />
|
|
||||||
|
|
||||||
<target name="build" depends="build-dependencies">
|
|
||||||
<mkdir dir="${compileDir}" />
|
|
||||||
<javac srcdir="${srcDir}" destdir="${compileDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
|
||||||
<classpath refid="classpath.build" />
|
|
||||||
<include name="**/*.java" />
|
|
||||||
<exclude name="se/hal/tts/GoogleTTSClient.java" />
|
|
||||||
</javac>
|
|
||||||
<copy todir="${compileDir}">
|
|
||||||
<fileset dir="${srcDir}"
|
|
||||||
excludes="**/*.java" />
|
|
||||||
</copy>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="build-dependencies">
|
|
||||||
<mkdir dir="${compileDir}" />
|
|
||||||
<delete includeemptydirs="true" failonerror="false">
|
|
||||||
<fileset dir="${libDir}" includes="zutil-*"/>
|
|
||||||
</delete>
|
|
||||||
|
|
||||||
<get src="https://repo1.maven.org/maven2/se/koc/zutil/${zutilVersion}/zutil-${zutilVersion}.jar"
|
|
||||||
dest="${libDir}/" verbose="true" usetimestamp="true"/>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="build-plugins" depends="build">
|
|
||||||
<subant target="build" verbose="true">
|
|
||||||
<fileset dir="plugins/" includes="*/build.xml"/>
|
|
||||||
</subant>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="build-test" depends="build">
|
|
||||||
<mkdir dir="${compileTestDir}" />
|
|
||||||
<javac srcdir="${testDir}" destdir="${compileTestDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
|
||||||
<classpath refid="classpath.test" />
|
|
||||||
<include name="**/*.java" />
|
|
||||||
</javac>
|
|
||||||
<copy todir="${compileTestDir}">
|
|
||||||
<fileset dir="${testDir}"
|
|
||||||
excludes="**/*.java" />
|
|
||||||
</copy>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<!-- generate release packages -->
|
|
||||||
<target name="package-all" depends="package,package-plugins" />
|
|
||||||
|
|
||||||
<target name="package" depends="build">
|
|
||||||
<copy todir="${releaseDir}" >
|
|
||||||
<fileset file="${root}/hal.conf.example" />
|
|
||||||
<fileset file="${root}/hal-default.db" />
|
|
||||||
<fileset file="${root}/logging.properties" />
|
|
||||||
<fileset file="${root}/run.sh" />
|
|
||||||
</copy>
|
|
||||||
<copy todir="${releaseDir}/lib">
|
|
||||||
<fileset dir="${libDir}" excludes="junit-*.jar,hamcrest-*.jar" />
|
|
||||||
</copy>
|
|
||||||
<copy todir="${releaseDir}/resource">
|
|
||||||
<fileset dir="${resourceDir}" />
|
|
||||||
</copy>
|
|
||||||
<jar destfile="${releaseDir}/${releaseJar}" basedir="${compileDir}" />
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="package-plugins" depends="package">
|
|
||||||
<subant target="package" verbose="true">
|
|
||||||
<fileset dir="plugins/" includes="*/build.xml"/>
|
|
||||||
</subant>
|
|
||||||
<!-- Copy plugin jars -->
|
|
||||||
<copy todir="${releaseDir}/plugins" flatten="true" includeEmptyDirs="false">
|
|
||||||
<fileset dir="plugins/">
|
|
||||||
<include name="*/build/release/**"/>
|
|
||||||
</fileset>
|
|
||||||
</copy>
|
|
||||||
<!-- Copy plugin libs -->
|
|
||||||
<copy todir="${releaseDir}/lib" flatten="true" includeEmptyDirs="false">
|
|
||||||
<fileset dir="plugins/">
|
|
||||||
<include name="*/lib/**"/>
|
|
||||||
</fileset>
|
|
||||||
</copy>
|
|
||||||
<!-- Copy plugin resources -->
|
|
||||||
<copy todir="${releaseDir}/resources" includeEmptyDirs="false">
|
|
||||||
<fileset dir="plugins/">
|
|
||||||
<include name="*/resources/**"/>
|
|
||||||
</fileset>
|
|
||||||
</copy>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<!-- ________________________ UTILITY TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<target name="clear-aggr-data-from-db" depends="">
|
|
||||||
<exec executable="sqlite3">
|
|
||||||
<arg line="hal.db 'DELETE FROM sensor_data_aggr'" />
|
|
||||||
</exec>
|
|
||||||
|
|
||||||
<!-- update all internal sensors aggregation version to indicate for peers that they need to re-sync all data -->
|
|
||||||
<exec executable="sqlite3">
|
|
||||||
<arg line="hal.db 'UPDATE sensor SET aggr_version = (aggr_version+1) WHERE id = (SELECT sensor.id FROM user, sensor WHERE user.external == 0 AND sensor.user_id = user.id)'" />
|
|
||||||
</exec>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
103
build_plugin.xml
103
build_plugin.xml
|
|
@ -1,103 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project name="abstract plugin build file" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
<!-- ____________ (THESE SHOULD BE SET BY IMPORTING BUILD SCRIPT) ____________ -->
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<!--
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="releaseJar" value="tellstick.jar" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" />
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!-- ________________________ CLASSPATH ________________________ -->
|
|
||||||
|
|
||||||
<!--define standard arguments for javac-->
|
|
||||||
<presetdef name="javac">
|
|
||||||
<javac includeantruntime="false" />
|
|
||||||
</presetdef>
|
|
||||||
|
|
||||||
<!--classpath included when building-->
|
|
||||||
<path id="classpath.build">
|
|
||||||
<fileset dir="${libDir}" erroronmissingdir="false">
|
|
||||||
<include name="**/*.jar"/>
|
|
||||||
</fileset>
|
|
||||||
<pathelement location="${compileDir}" />
|
|
||||||
<!-- Hal core -->
|
|
||||||
<pathelement location="../../build/production" />
|
|
||||||
<fileset dir="../../lib">
|
|
||||||
<include name="**/*.jar"/>
|
|
||||||
</fileset>
|
|
||||||
</path>
|
|
||||||
|
|
||||||
<path id="classpath.test">
|
|
||||||
<pathelement location="${compileTestDir}" />
|
|
||||||
<pathelement location="../../${compileTestDir}" />
|
|
||||||
<!--include libraries used for building-->
|
|
||||||
<path refid="classpath.build"/>
|
|
||||||
</path>
|
|
||||||
|
|
||||||
<!-- ________________________ EXECUTION TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<target name="test" depends="build-test">
|
|
||||||
<mkdir dir="${reportsDir}" />
|
|
||||||
<junit printsummary="yes" haltonfailure="false" fork="true">
|
|
||||||
<classpath refid="classpath.test" />
|
|
||||||
<formatter type="plain" usefile="false" /> <!-- to screen -->
|
|
||||||
<formatter type="xml" /> <!-- to file -->
|
|
||||||
|
|
||||||
<batchtest todir="${reportsDir}" skipNonTests="true">
|
|
||||||
<fileset dir="${compileTestDir}" includes="**/*Test*.class" erroronmissingdir="false"/>
|
|
||||||
</batchtest>
|
|
||||||
</junit>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<!-- ________________________ BUILD TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<!--clean all build paths-->
|
|
||||||
<target name="clean">
|
|
||||||
<delete includeemptydirs="true" failonerror="false">
|
|
||||||
<fileset dir="${buildRoot}" includes="**/*"/>
|
|
||||||
</delete>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<!--build product code-->
|
|
||||||
<target name="build">
|
|
||||||
<mkdir dir="${compileDir}" />
|
|
||||||
<javac srcdir="${srcDir}" destdir="${compileDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
|
||||||
<classpath refid="classpath.build" />
|
|
||||||
<include name="**/*.java" />
|
|
||||||
</javac>
|
|
||||||
<copy todir="${compileDir}">
|
|
||||||
<fileset dir="${srcDir}"
|
|
||||||
excludes="**/*.java" />
|
|
||||||
</copy>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<available file="${testDir}" property="testDirAvailable" value=""/>
|
|
||||||
|
|
||||||
<target name="build-test" depends="build" if="testDirAvailable">
|
|
||||||
<mkdir dir="${compileTestDir}" />
|
|
||||||
<javac srcdir="${testDir}" destdir="${compileTestDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
|
||||||
<classpath refid="classpath.test" />
|
|
||||||
<include name="**/*.java" />
|
|
||||||
</javac>
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="package" depends="build">
|
|
||||||
<copy todir="${releaseDir}/resource" failonerror="false">
|
|
||||||
<fileset dir="${resourceDir}" />
|
|
||||||
</copy>
|
|
||||||
<jar destfile="${releaseDir}/${releaseJar}" basedir="${compileDir}" />
|
|
||||||
</target>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
3
plugins/hal-assistant-google/build.gradle
Normal file
3
plugins/hal-assistant-google/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
implementation 'com.google.actions:actions-on-google:1.8.0'
|
||||||
|
}
|
||||||
3
plugins/hal-mqtt/build.gradle
Normal file
3
plugins/hal-mqtt/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal MQTT Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-mqtt.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
3
plugins/hal-netscan/build.gradle
Normal file
3
plugins/hal-netscan/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal Network Scanner Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-netscan.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
3
plugins/hal-nutups/build.gradle
Normal file
3
plugins/hal-nutups/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal NUT UPS Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-nutups.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
3
plugins/hal-powerchallenge/build.gradle
Normal file
3
plugins/hal-powerchallenge/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,50 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal Power;Challenge Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-powerchallenge.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
<property name="resourceDir" value="${root}/resource" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
6
plugins/hal-raspberry/build.gradle
Normal file
6
plugins/hal-raspberry/build.gradle
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
dependencies {
|
||||||
|
implementation 'com.pi4j:pi4j-core:1.1'
|
||||||
|
implementation 'com.pi4j:pi4j-device:1.1'
|
||||||
|
implementation 'com.pi4j:pi4j-gpio-extension:1.1'
|
||||||
|
implementation 'com.pi4j:pi4j-service:1.1'
|
||||||
|
}
|
||||||
|
|
@ -1,50 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal RaspberryPi Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-raspberry.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="releaseJar" value="hal-raspberry.jar" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,165 +0,0 @@
|
||||||
GNU LESSER GENERAL PUBLIC LICENSE
|
|
||||||
Version 3, 29 June 2007
|
|
||||||
|
|
||||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
|
||||||
of this license document, but changing it is not allowed.
|
|
||||||
|
|
||||||
|
|
||||||
This version of the GNU Lesser General Public License incorporates
|
|
||||||
the terms and conditions of version 3 of the GNU General Public
|
|
||||||
License, supplemented by the additional permissions listed below.
|
|
||||||
|
|
||||||
0. Additional Definitions.
|
|
||||||
|
|
||||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
|
||||||
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
|
||||||
General Public License.
|
|
||||||
|
|
||||||
"The Library" refers to a covered work governed by this License,
|
|
||||||
other than an Application or a Combined Work as defined below.
|
|
||||||
|
|
||||||
An "Application" is any work that makes use of an interface provided
|
|
||||||
by the Library, but which is not otherwise based on the Library.
|
|
||||||
Defining a subclass of a class defined by the Library is deemed a mode
|
|
||||||
of using an interface provided by the Library.
|
|
||||||
|
|
||||||
A "Combined Work" is a work produced by combining or linking an
|
|
||||||
Application with the Library. The particular version of the Library
|
|
||||||
with which the Combined Work was made is also called the "Linked
|
|
||||||
Version".
|
|
||||||
|
|
||||||
The "Minimal Corresponding Source" for a Combined Work means the
|
|
||||||
Corresponding Source for the Combined Work, excluding any source code
|
|
||||||
for portions of the Combined Work that, considered in isolation, are
|
|
||||||
based on the Application, and not on the Linked Version.
|
|
||||||
|
|
||||||
The "Corresponding Application Code" for a Combined Work means the
|
|
||||||
object code and/or source code for the Application, including any data
|
|
||||||
and utility programs needed for reproducing the Combined Work from the
|
|
||||||
Application, but excluding the System Libraries of the Combined Work.
|
|
||||||
|
|
||||||
1. Exception to Section 3 of the GNU GPL.
|
|
||||||
|
|
||||||
You may convey a covered work under sections 3 and 4 of this License
|
|
||||||
without being bound by section 3 of the GNU GPL.
|
|
||||||
|
|
||||||
2. Conveying Modified Versions.
|
|
||||||
|
|
||||||
If you modify a copy of the Library, and, in your modifications, a
|
|
||||||
facility refers to a function or data to be supplied by an Application
|
|
||||||
that uses the facility (other than as an argument passed when the
|
|
||||||
facility is invoked), then you may convey a copy of the modified
|
|
||||||
version:
|
|
||||||
|
|
||||||
a) under this License, provided that you make a good faith effort to
|
|
||||||
ensure that, in the event an Application does not supply the
|
|
||||||
function or data, the facility still operates, and performs
|
|
||||||
whatever part of its purpose remains meaningful, or
|
|
||||||
|
|
||||||
b) under the GNU GPL, with none of the additional permissions of
|
|
||||||
this License applicable to that copy.
|
|
||||||
|
|
||||||
3. Object Code Incorporating Material from Library Header Files.
|
|
||||||
|
|
||||||
The object code form of an Application may incorporate material from
|
|
||||||
a header file that is part of the Library. You may convey such object
|
|
||||||
code under terms of your choice, provided that, if the incorporated
|
|
||||||
material is not limited to numerical parameters, data structure
|
|
||||||
layouts and accessors, or small macros, inline functions and templates
|
|
||||||
(ten or fewer lines in length), you do both of the following:
|
|
||||||
|
|
||||||
a) Give prominent notice with each copy of the object code that the
|
|
||||||
Library is used in it and that the Library and its use are
|
|
||||||
covered by this License.
|
|
||||||
|
|
||||||
b) Accompany the object code with a copy of the GNU GPL and this license
|
|
||||||
document.
|
|
||||||
|
|
||||||
4. Combined Works.
|
|
||||||
|
|
||||||
You may convey a Combined Work under terms of your choice that,
|
|
||||||
taken together, effectively do not restrict modification of the
|
|
||||||
portions of the Library contained in the Combined Work and reverse
|
|
||||||
engineering for debugging such modifications, if you also do each of
|
|
||||||
the following:
|
|
||||||
|
|
||||||
a) Give prominent notice with each copy of the Combined Work that
|
|
||||||
the Library is used in it and that the Library and its use are
|
|
||||||
covered by this License.
|
|
||||||
|
|
||||||
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
|
||||||
document.
|
|
||||||
|
|
||||||
c) For a Combined Work that displays copyright notices during
|
|
||||||
execution, include the copyright notice for the Library among
|
|
||||||
these notices, as well as a reference directing the user to the
|
|
||||||
copies of the GNU GPL and this license document.
|
|
||||||
|
|
||||||
d) Do one of the following:
|
|
||||||
|
|
||||||
0) Convey the Minimal Corresponding Source under the terms of this
|
|
||||||
License, and the Corresponding Application Code in a form
|
|
||||||
suitable for, and under terms that permit, the user to
|
|
||||||
recombine or relink the Application with a modified version of
|
|
||||||
the Linked Version to produce a modified Combined Work, in the
|
|
||||||
manner specified by section 6 of the GNU GPL for conveying
|
|
||||||
Corresponding Source.
|
|
||||||
|
|
||||||
1) Use a suitable shared library mechanism for linking with the
|
|
||||||
Library. A suitable mechanism is one that (a) uses at run time
|
|
||||||
a copy of the Library already present on the user's computer
|
|
||||||
system, and (b) will operate properly with a modified version
|
|
||||||
of the Library that is interface-compatible with the Linked
|
|
||||||
Version.
|
|
||||||
|
|
||||||
e) Provide Installation Information, but only if you would otherwise
|
|
||||||
be required to provide such information under section 6 of the
|
|
||||||
GNU GPL, and only to the extent that such information is
|
|
||||||
necessary to install and execute a modified version of the
|
|
||||||
Combined Work produced by recombining or relinking the
|
|
||||||
Application with a modified version of the Linked Version. (If
|
|
||||||
you use option 4d0, the Installation Information must accompany
|
|
||||||
the Minimal Corresponding Source and Corresponding Application
|
|
||||||
Code. If you use option 4d1, you must provide the Installation
|
|
||||||
Information in the manner specified by section 6 of the GNU GPL
|
|
||||||
for conveying Corresponding Source.)
|
|
||||||
|
|
||||||
5. Combined Libraries.
|
|
||||||
|
|
||||||
You may place library facilities that are a work based on the
|
|
||||||
Library side by side in a single library together with other library
|
|
||||||
facilities that are not Applications and are not covered by this
|
|
||||||
License, and convey such a combined library under terms of your
|
|
||||||
choice, if you do both of the following:
|
|
||||||
|
|
||||||
a) Accompany the combined library with a copy of the same work based
|
|
||||||
on the Library, uncombined with any other library facilities,
|
|
||||||
conveyed under the terms of this License.
|
|
||||||
|
|
||||||
b) Give prominent notice with the combined library that part of it
|
|
||||||
is a work based on the Library, and explaining where to find the
|
|
||||||
accompanying uncombined form of the same work.
|
|
||||||
|
|
||||||
6. Revised Versions of the GNU Lesser General Public License.
|
|
||||||
|
|
||||||
The Free Software Foundation may publish revised and/or new versions
|
|
||||||
of the GNU Lesser General Public License from time to time. Such new
|
|
||||||
versions will be similar in spirit to the present version, but may
|
|
||||||
differ in detail to address new problems or concerns.
|
|
||||||
|
|
||||||
Each version is given a distinguishing version number. If the
|
|
||||||
Library as you received it specifies that a certain numbered version
|
|
||||||
of the GNU Lesser General Public License "or any later version"
|
|
||||||
applies to it, you have the option of following the terms and
|
|
||||||
conditions either of that published version or of any later version
|
|
||||||
published by the Free Software Foundation. If the Library as you
|
|
||||||
received it does not specify a version number of the GNU Lesser
|
|
||||||
General Public License, you may choose any version of the GNU Lesser
|
|
||||||
General Public License ever published by the Free Software Foundation.
|
|
||||||
|
|
||||||
If the Library as you received it specifies that a proxy can decide
|
|
||||||
whether future versions of the GNU Lesser General Public License shall
|
|
||||||
apply, that proxy's public statement of acceptance of any version is
|
|
||||||
permanent authorization for you to choose that version for the
|
|
||||||
Library.
|
|
||||||
|
|
@ -1,33 +0,0 @@
|
||||||
=========================================================================
|
|
||||||
Pi4J :: Java library for Raspberry Pi
|
|
||||||
=========================================================================
|
|
||||||
|
|
||||||
Pi4J Library
|
|
||||||
Copyright (C) 2012-2016 Pi4J.com
|
|
||||||
|
|
||||||
This product includes software developed at:
|
|
||||||
The Pi4J Project (http://www.pi4j.com/).
|
|
||||||
|
|
||||||
This product was originally authored by: Robert Savage
|
|
||||||
|
|
||||||
This software is licensed under the GNU LGPLv3 license.
|
|
||||||
More information about licensing terms can be found at:
|
|
||||||
http://pi4j.com/license.html
|
|
||||||
|
|
||||||
Additional information about this project and its authors can be found at:
|
|
||||||
- http://www.pi4j.com/
|
|
||||||
- http://www.raspicentral.com
|
|
||||||
- http://www.savagehomeautomation.com
|
|
||||||
|
|
||||||
This software compiles against libraries from the WiringPi project.
|
|
||||||
The Wiring Pi project is provided by Gordon Henderson and is available
|
|
||||||
from
|
|
||||||
http://wiringpi.com/
|
|
||||||
|
|
||||||
The WiringPi project is licensed under the GNU LGPLv3 license
|
|
||||||
http://www.gnu.org/licenses/lgpl.html
|
|
||||||
|
|
||||||
=========================================================================
|
|
||||||
Subject to the terms of the software license, this NOTICE file must be
|
|
||||||
included in any Derivative Works that You distribute as a readable copy.
|
|
||||||
(Section 4d)
|
|
||||||
3
plugins/hal-tellstick/build.gradle
Normal file
3
plugins/hal-tellstick/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
implementation 'com.fazecast:jSerialComm:1.3.11'
|
||||||
|
}
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal Tellstick Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-tellstick.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
3
plugins/hal-zigbee/build.gradle
Normal file
3
plugins/hal-zigbee/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal Zigbee Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-zigbee.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
3
plugins/hal-zwave/build.gradle
Normal file
3
plugins/hal-zwave/build.gradle
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
dependencies {
|
||||||
|
implementation 'com.github.zgmnkv:zwave4j:0.3'
|
||||||
|
}
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ The MIT License (MIT)
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2020 Ziver Koc
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to deal
|
|
||||||
~ in the Software without restriction, including without limitation the rights
|
|
||||||
~ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
~ copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in
|
|
||||||
~ all copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project name="Hal ZWave Plugin" >
|
|
||||||
|
|
||||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
|
||||||
|
|
||||||
<!--plugin specific properties-->
|
|
||||||
<property name="releaseJar" value="hal-zwave.jar" />
|
|
||||||
|
|
||||||
<!--common properties-->
|
|
||||||
<property name="root" value="." />
|
|
||||||
<property name="srcDir" value="${root}/src" />
|
|
||||||
<property name="testDir" value="${root}/test" />
|
|
||||||
<property name="libDir" value="${root}/lib" />
|
|
||||||
|
|
||||||
<property name="buildRoot" value="${root}/build" />
|
|
||||||
<property name="compileDir" value="${buildRoot}/production" />
|
|
||||||
<property name="compileTestDir" value="${buildRoot}/test" />
|
|
||||||
<property name="releaseDir" value="${buildRoot}/release" />
|
|
||||||
<property name="reportsDir" value="../../${buildRoot}/reports" /> <!-- Use Hal reports folder -->
|
|
||||||
|
|
||||||
<!-- ________________________ TARGETS ________________________ -->
|
|
||||||
|
|
||||||
<import file="../../build_plugin.xml"/>
|
|
||||||
|
|
||||||
</project>
|
|
||||||
2
run.sh
2
run.sh
|
|
@ -6,7 +6,7 @@ ant package-all
|
||||||
# Kill current session
|
# Kill current session
|
||||||
screen -S hal -X kill
|
screen -S hal -X kill
|
||||||
# Start new session
|
# Start new session
|
||||||
screen -S hal -L -d -m ant run
|
screen -S hal -L -d -m ./gradlew run
|
||||||
|
|
||||||
echo "-----------------"
|
echo "-----------------"
|
||||||
screen -list
|
screen -list
|
||||||
|
|
|
||||||
9
settings.gradle
Normal file
9
settings.gradle
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
import static groovy.io.FileType.*
|
||||||
|
|
||||||
|
rootProject.name = "Hal"
|
||||||
|
|
||||||
|
new File(rootDir, "plugins").traverse(type: DIRECTORIES) {dir->
|
||||||
|
if (new File(dir, '/build.gradle').exists()) {
|
||||||
|
include "plugins:${dir.getName()}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
package se.hal;
|
package se.hal;
|
||||||
|
|
||||||
import com.google.common.collect.Lists;
|
|
||||||
import se.hal.intf.*;
|
import se.hal.intf.*;
|
||||||
import se.hal.struct.Event;
|
import se.hal.struct.Event;
|
||||||
import se.hal.struct.Sensor;
|
import se.hal.struct.Sensor;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue