Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
H
haikang-client
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
杨立
haikang-client
Commits
fc8d51d8
提交
fc8d51d8
authored
9月 21, 2021
作者:
wangqiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
wins
上级
8a854f28
隐藏空白字符变更
内嵌
并排
正在显示
57 个修改的文件
包含
962 行增加
和
98 行删除
+962
-98
apq-pc-client.conf
apq-pc-client/src/main/conf/apq-pc-client.conf
+0
-0
MqttClientSecurityConfiguration.java
.../client/service/core/MqttClientSecurityConfiguration.java
+1
-79
MqttServiceImpl.java
...java/com/priusis/client/service/core/MqttServiceImpl.java
+60
-16
RemoteDeviceVo.java
.../java/com/priusis/client/service/core/RemoteDeviceVo.java
+40
-0
application.yml
apq-pc-client/src/main/resources/application.yml
+4
-2
windows.xml
apq-pc-control/src/main/assembly/windows.xml
+68
-0
apq-pc-control.conf
apq-pc-control/src/main/conf/apq-pc-control.conf
+3
-0
logback.xml
apq-pc-control/src/main/conf/logback.xml
+28
-0
unix.properties
apq-pc-control/src/main/filters/unix.properties
+2
-0
windows.properties
apq-pc-control/src/main/filters/windows.properties
+2
-0
apq-pc-control.service
...c-control/src/main/scripts/control/apq-pc-control.service
+11
-0
postinst
apq-pc-control/src/main/scripts/control/deb/postinst
+5
-0
postrm
apq-pc-control/src/main/scripts/control/deb/postrm
+3
-0
preinst
apq-pc-control/src/main/scripts/control/deb/preinst
+18
-0
prerm
apq-pc-control/src/main/scripts/control/deb/prerm
+5
-0
postinst
apq-pc-control/src/main/scripts/control/rpm/postinst
+9
-0
postrm
apq-pc-control/src/main/scripts/control/rpm/postrm
+6
-0
preinst
apq-pc-control/src/main/scripts/control/rpm/preinst
+6
-0
prerm
apq-pc-control/src/main/scripts/control/rpm/prerm
+6
-0
install.bat
apq-pc-control/src/main/scripts/windows/install.bat
+86
-0
service.xml
apq-pc-control/src/main/scripts/windows/service.xml
+13
-0
uninstall.bat
apq-pc-control/src/main/scripts/windows/uninstall.bat
+10
-0
windows.xml
apq-pc-info/src/main/assembly/windows.xml
+68
-0
apq-pc-info.conf
apq-pc-info/src/main/conf/apq-pc-info.conf
+3
-0
logback.xml
apq-pc-info/src/main/conf/logback.xml
+28
-0
unix.properties
apq-pc-info/src/main/filters/unix.properties
+2
-0
windows.properties
apq-pc-info/src/main/filters/windows.properties
+2
-0
apq-pc-info.service
apq-pc-info/src/main/scripts/control/apq-pc-info.service
+11
-0
postinst
apq-pc-info/src/main/scripts/control/deb/postinst
+5
-0
postrm
apq-pc-info/src/main/scripts/control/deb/postrm
+3
-0
preinst
apq-pc-info/src/main/scripts/control/deb/preinst
+18
-0
prerm
apq-pc-info/src/main/scripts/control/deb/prerm
+5
-0
postinst
apq-pc-info/src/main/scripts/control/rpm/postinst
+9
-0
postrm
apq-pc-info/src/main/scripts/control/rpm/postrm
+6
-0
preinst
apq-pc-info/src/main/scripts/control/rpm/preinst
+6
-0
prerm
apq-pc-info/src/main/scripts/control/rpm/prerm
+6
-0
install.bat
apq-pc-info/src/main/scripts/windows/install.bat
+86
-0
service.xml
apq-pc-info/src/main/scripts/windows/service.xml
+13
-0
uninstall.bat
apq-pc-info/src/main/scripts/windows/uninstall.bat
+10
-0
windows.xml
apq-pc-register/src/main/assembly/windows.xml
+68
-0
apq-pc-register.conf
apq-pc-register/src/main/conf/apq-pc-register.conf
+3
-0
logback.xml
apq-pc-register/src/main/conf/logback.xml
+28
-0
unix.properties
apq-pc-register/src/main/filters/unix.properties
+2
-0
windows.properties
apq-pc-register/src/main/filters/windows.properties
+2
-0
apq-pc-register.service
...register/src/main/scripts/control/apq-pc-register.service
+11
-0
postinst
apq-pc-register/src/main/scripts/control/deb/postinst
+5
-0
postrm
apq-pc-register/src/main/scripts/control/deb/postrm
+3
-0
preinst
apq-pc-register/src/main/scripts/control/deb/preinst
+18
-0
prerm
apq-pc-register/src/main/scripts/control/deb/prerm
+5
-0
postinst
apq-pc-register/src/main/scripts/control/rpm/postinst
+9
-0
postrm
apq-pc-register/src/main/scripts/control/rpm/postrm
+6
-0
preinst
apq-pc-register/src/main/scripts/control/rpm/preinst
+6
-0
prerm
apq-pc-register/src/main/scripts/control/rpm/prerm
+6
-0
install.bat
apq-pc-register/src/main/scripts/windows/install.bat
+86
-0
service.xml
apq-pc-register/src/main/scripts/windows/service.xml
+13
-0
uninstall.bat
apq-pc-register/src/main/scripts/windows/uninstall.bat
+10
-0
pom.xml
tools/netty-mqtt/pom.xml
+14
-1
没有找到文件。
apq-pc-client/src/main/conf/
pi-gateway
.conf
→
apq-pc-client/src/main/conf/
apq-pc-client
.conf
浏览文件 @
fc8d51d8
File moved
apq-pc-client/src/main/java/com/priusis/client/service/core/MqttClientSecurityConfiguration.java
浏览文件 @
fc8d51d8
package
com
.
priusis
.
client
.
service
.
core
;
import
lombok.Data
;
import
org.eclipse.paho.client.mqttv3.MqttConnectOptions
;
import
org.eclipse.paho.client.mqttv3.internal.security.SSLSocketFactoryFactory
;
import
org.springframework.util.Base64Utils
;
import
org.springframework.util.StringUtils
;
import
java.io.FileInputStream
;
import
java.nio.charset.StandardCharsets
;
import
java.security.*
;
import
java.util.Properties
;
/**
* Created by priusis on 18.01.17.
...
...
@@ -17,6 +8,7 @@ import java.util.Properties;
@Data
public
class
MqttClientSecurityConfiguration
{
private
boolean
apiByMac
;
private
String
accessToken
;
private
String
keystore
;
private
String
keystorePassword
;
...
...
@@ -24,74 +16,4 @@ public class MqttClientSecurityConfiguration {
private
String
truststore
;
private
String
truststorePassword
;
public
boolean
isTokenBased
()
{
return
!
StringUtils
.
isEmpty
(
accessToken
);
}
public
boolean
isSsl
()
{
return
!
StringUtils
.
isEmpty
(
truststore
);
}
public
void
setupSecurityOptions
(
MqttConnectOptions
options
)
{
if
(
this
.
isTokenBased
())
{
options
.
setUserName
(
this
.
getAccessToken
());
if
(!
StringUtils
.
isEmpty
(
this
.
getTruststore
()))
{
Properties
sslProperties
=
new
Properties
();
sslProperties
.
put
(
SSLSocketFactoryFactory
.
TRUSTSTORE
,
this
.
getTruststore
());
sslProperties
.
put
(
SSLSocketFactoryFactory
.
TRUSTSTOREPWD
,
this
.
getTruststorePassword
());
sslProperties
.
put
(
SSLSocketFactoryFactory
.
TRUSTSTORETYPE
,
"JKS"
);
sslProperties
.
put
(
SSLSocketFactoryFactory
.
CLIENTAUTH
,
false
);
options
.
setSSLProperties
(
sslProperties
);
}
}
else
{
//TODO: check and document this
Properties
sslProperties
=
new
Properties
();
sslProperties
.
put
(
SSLSocketFactoryFactory
.
KEYSTORE
,
this
.
getKeystore
());
sslProperties
.
put
(
SSLSocketFactoryFactory
.
KEYSTOREPWD
,
this
.
getKeystorePassword
());
sslProperties
.
put
(
SSLSocketFactoryFactory
.
KEYSTORETYPE
,
"JKS"
);
sslProperties
.
put
(
SSLSocketFactoryFactory
.
TRUSTSTORE
,
this
.
getTruststore
());
sslProperties
.
put
(
SSLSocketFactoryFactory
.
TRUSTSTOREPWD
,
this
.
getTruststorePassword
());
sslProperties
.
put
(
SSLSocketFactoryFactory
.
TRUSTSTORETYPE
,
"JKS"
);
sslProperties
.
put
(
SSLSocketFactoryFactory
.
CLIENTAUTH
,
true
);
options
.
setSSLProperties
(
sslProperties
);
}
}
public
String
getClientId
()
{
if
(
this
.
isTokenBased
())
{
return
sha256
(
this
.
getAccessToken
().
getBytes
(
StandardCharsets
.
UTF_8
));
}
else
{
try
{
FileInputStream
is
=
new
FileInputStream
(
this
.
getKeystore
());
KeyStore
keystore
=
KeyStore
.
getInstance
(
KeyStore
.
getDefaultType
());
keystore
.
load
(
is
,
this
.
getKeystorePassword
().
toCharArray
());
Key
key
=
keystore
.
getKey
(
this
.
getKeystoreKeyAlias
(),
this
.
getKeystorePassword
().
toCharArray
());
if
(
key
instanceof
PrivateKey
)
{
// Get certificate of public key
java
.
security
.
cert
.
Certificate
cert
=
keystore
.
getCertificate
(
this
.
getKeystoreKeyAlias
());
// Get public key
PublicKey
publicKey
=
cert
.
getPublicKey
();
return
sha256
(
publicKey
.
getEncoded
());
}
else
{
throw
new
RuntimeException
(
"No public key!"
);
}
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
);
}
}
}
private
String
sha256
(
byte
[]
data
)
{
try
{
MessageDigest
md
=
MessageDigest
.
getInstance
(
"SHA-256"
);
md
.
update
(
data
);
return
Base64Utils
.
encodeToString
(
md
.
digest
());
}
catch
(
NoSuchAlgorithmException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
}
apq-pc-client/src/main/java/com/priusis/client/service/core/MqttServiceImpl.java
浏览文件 @
fc8d51d8
package
com
.
priusis
.
client
.
service
.
core
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.http.HttpUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.fasterxml.jackson.databind.JsonNode
;
import
com.fasterxml.jackson.databind.node.ObjectNode
;
import
com.google.common.io.Resources
;
...
...
@@ -15,16 +18,19 @@ import io.netty.channel.nio.NioEventLoopGroup;
import
io.netty.handler.ssl.SslContext
;
import
io.netty.handler.ssl.SslContextBuilder
;
import
io.netty.util.concurrent.Promise
;
import
lombok.SneakyThrows
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.eclipse.paho.client.mqttv3.MqttMessage
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
oshi.hardware.NetworkIF
;
import
javax.annotation.PostConstruct
;
import
javax.net.ssl.KeyManagerFactory
;
import
javax.net.ssl.TrustManagerFactory
;
import
java.io.*
;
import
java.net.InetAddress
;
import
java.net.NetworkInterface
;
import
java.net.URL
;
import
java.nio.charset.StandardCharsets
;
import
java.security.KeyStore
;
...
...
@@ -47,6 +53,12 @@ import static com.priusis.client.util.JsonTools.*;
@Slf4j
public
class
MqttServiceImpl
implements
MqttService
,
MqttHandler
,
MqttClientCallback
{
@Value
(
value
=
"${apq.iot-gateway}"
)
private
String
gateway
;
@Value
(
value
=
"${apq.url.device_info}"
)
private
String
deviceInfo
;
//private static final String GATEWAY_RPC_TOPIC = "gateway/rpc";
//private static final String GATEWAY_ATTRIBUTES_TOPIC = "gateway/attrs";
//private static final String GATEWAY_TELEMETRY_TOPIC = "gateway/telemetry";
...
...
@@ -342,7 +354,6 @@ public class MqttServiceImpl implements MqttService, MqttHandler, MqttClientCall
.
method
(
payload
.
get
(
"method"
).
asText
()).
params
(
payload
.
get
(
"params"
).
asText
()).
build
();
// 存储rpc下发的数据
try
{
...
...
@@ -516,7 +527,12 @@ public class MqttServiceImpl implements MqttService, MqttHandler, MqttClientCall
private
MqttClient
initMqttClient
()
{
try
{
MqttClientConfig
mqttClientConfig
=
getMqttClientConfig
();
mqttClientConfig
.
setUsername
(
connection
.
getSecurity
().
getAccessToken
());
if
(
connection
.
getSecurity
().
isApiByMac
())
{
mqttClientConfig
.
setUsername
(
getClientSecurityByMac
().
getAccessToken
());
}
else
{
mqttClientConfig
.
setUsername
(
connection
.
getSecurity
().
getAccessToken
());
}
tbClient
=
MqttClient
.
create
(
mqttClientConfig
,
this
);
tbClient
.
setCallback
(
this
);
tbClient
.
setEventLoop
(
nioEventLoopGroup
);
...
...
@@ -570,27 +586,32 @@ public class MqttServiceImpl implements MqttService, MqttHandler, MqttClientCall
private
MqttClientConfig
getMqttClientConfig
()
{
MqttClientConfig
mqttClientConfig
;
if
(!
StringUtils
.
isEmpty
(
connection
.
getSecurity
().
getAccessToken
()))
{
if
(
StringUtils
.
isEmpty
(
connection
.
getSecurity
().
getTruststore
()))
{
mqttClientConfig
=
new
MqttClientConfig
();
mqttClientConfig
.
setUsername
(
connection
.
getSecurity
().
getAccessToken
());
if
(
connection
.
getSecurity
().
isApiByMac
())
{
mqttClientConfig
=
new
MqttClientConfig
();
mqttClientConfig
.
setUsername
(
getClientSecurityByMac
().
getAccessToken
());
}
else
{
if
(!
StringUtils
.
isEmpty
(
connection
.
getSecurity
().
getAccessToken
()))
{
if
(
StringUtils
.
isEmpty
(
connection
.
getSecurity
().
getTruststore
()))
{
mqttClientConfig
=
new
MqttClientConfig
();
mqttClientConfig
.
setUsername
(
connection
.
getSecurity
().
getAccessToken
());
}
else
{
try
{
SslContext
sslCtx
=
initOneWaySslContext
(
connection
.
getSecurity
());
mqttClientConfig
=
new
MqttClientConfig
(
sslCtx
);
}
catch
(
Exception
e
)
{
log
.
error
(
e
.
getMessage
(),
e
);
throw
new
RuntimeException
(
e
);
}
}
}
else
{
try
{
SslContext
sslCtx
=
init
One
WaySslContext
(
connection
.
getSecurity
());
SslContext
sslCtx
=
init
Two
WaySslContext
(
connection
.
getSecurity
());
mqttClientConfig
=
new
MqttClientConfig
(
sslCtx
);
}
catch
(
Exception
e
)
{
log
.
error
(
e
.
getMessage
(),
e
);
throw
new
RuntimeException
(
e
);
}
}
}
else
{
try
{
SslContext
sslCtx
=
initTwoWaySslContext
(
connection
.
getSecurity
());
mqttClientConfig
=
new
MqttClientConfig
(
sslCtx
);
}
catch
(
Exception
e
)
{
log
.
error
(
e
.
getMessage
(),
e
);
throw
new
RuntimeException
(
e
);
}
}
return
mqttClientConfig
;
}
...
...
@@ -635,4 +656,27 @@ public class MqttServiceImpl implements MqttService, MqttHandler, MqttClientCall
public
void
setPersistentFileService
(
PersistentFileService
persistentFileService
)
{
this
.
persistentFileService
=
persistentFileService
;
}
private
MqttClientSecurityConfiguration
getClientSecurityByMac
()
{
try
{
NetworkIF
networkIF
=
new
NetworkIF
();
networkIF
.
setNetworkInterface
(
NetworkInterface
.
getByInetAddress
(
InetAddress
.
getLocalHost
()));
String
mac
=
networkIF
.
getMacaddr
();
if
(
StrUtil
.
isBlank
(
mac
))
{
log
.
warn
(
"未获取到MAC地址"
);
return
null
;
}
deviceInfo
=
StrUtil
.
format
(
deviceInfo
,
mac
);
String
remoteDeviceVoJson
=
HttpUtil
.
get
(
gateway
+
deviceInfo
);
RemoteDeviceVo
remoteDeviceVo
=
JSONUtil
.
toBean
(
remoteDeviceVoJson
,
RemoteDeviceVo
.
class
);
MqttClientSecurityConfiguration
mqttClientSecurityConfiguration
=
new
MqttClientSecurityConfiguration
();
mqttClientSecurityConfiguration
.
setAccessToken
(
remoteDeviceVo
.
getSecretKey
());
return
mqttClientSecurityConfiguration
;
}
catch
(
Exception
e
)
{
log
.
error
(
"获取Mac地址异常"
,
e
);
}
return
null
;
}
}
apq-pc-client/src/main/java/com/priusis/client/service/core/RemoteDeviceVo.java
0 → 100644
浏览文件 @
fc8d51d8
package
com
.
priusis
.
client
.
service
.
core
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* <p>
* 设备表
* </p>
*/
@Data
public
class
RemoteDeviceVo
implements
Serializable
{
/**
* 设备通讯id
*/
private
String
did
;
/**
* 设备编码
*/
private
String
code
;
/**
* 业务code
*/
private
String
bizCode
;
/**
* 秘钥
*/
private
String
secretKey
;
/**
* 设备名称
*/
private
String
name
;
}
apq-pc-client/src/main/resources/application.yml
浏览文件 @
fc8d51d8
...
...
@@ -24,12 +24,13 @@ core:
path
:
D://storage
bufferSize
:
6
connection
:
host
:
"
${
GATEWAY
_HOST:127.0.0.1}"
host
:
"
${
PC
_HOST:127.0.0.1}"
port
:
1884
retryInterval
:
3000
maxInFlight
:
1000
security
:
accessToken
:
"
${GATEWAY_ACCESS_TOKEN:1hTbcWoaQvPzl2PpbkTG}"
apiByMac
:
"
${PC_API_BY_MAC:true}"
# accessToken: "${PC_ACCESS_TOKEN:1hTbcWoaQvPzl2PpbkTG}"
remoteConfiguration
:
false
extensions
:
-
...
...
@@ -42,5 +43,6 @@ apq:
iot-gateway
:
192.168.124.19:7002
url
:
install
:
/ops/install/getList?pageNum={}&pageSize={}
device_info
:
/facility/getByMacAddress?macAddress={}
upgrade
:
/ops/upgrade/getList?pageNum={}&pageSize={}
add-program
:
/ops/program/addFacProgram
apq-pc-control/src/main/assembly/windows.xml
0 → 100644
浏览文件 @
fc8d51d8
<assembly
xmlns=
"http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd"
>
<id>
windows
</id>
<formats>
<format>
zip
</format>
</formats>
<!-- Workaround to create logs directory -->
<fileSets>
<fileSet>
<directory>
${pkg.win.dist}
</directory>
<outputDirectory>
logs
</outputDirectory>
<excludes>
<exclude>
*/**
</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>
${pkg.win.dist}/conf
</directory>
<outputDirectory>
conf
</outputDirectory>
<lineEnding>
windows
</lineEnding>
<excludes>
<exclude>
*.der
</exclude>
<exclude>
*.cer
</exclude>
<exclude>
*.pfx
</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>
${pkg.win.dist}/conf
</directory>
<outputDirectory>
conf
</outputDirectory>
<includes>
<include>
*.der
</include>
<include>
*.cer
</include>
<include>
*.pfx
</include>
</includes>
</fileSet>
</fileSets>
<files>
<file>
<source>
${project.build.directory}/${project.build.finalName}-boot.${project.packaging}
</source>
<outputDirectory>
lib
</outputDirectory>
<destName>
${pkg.name}.jar
</destName>
</file>
<file>
<source>
${pkg.win.dist}/service.exe
</source>
<outputDirectory/>
<destName>
${pkg.name}.exe
</destName>
</file>
<file>
<source>
${pkg.win.dist}/service.xml
</source>
<outputDirectory/>
<destName>
${pkg.name}.xml
</destName>
<lineEnding>
windows
</lineEnding>
</file>
<file>
<source>
${pkg.win.dist}/install.bat
</source>
<outputDirectory/>
<lineEnding>
windows
</lineEnding>
</file>
<file>
<source>
${pkg.win.dist}/uninstall.bat
</source>
<outputDirectory/>
<lineEnding>
windows
</lineEnding>
</file>
</files>
</assembly>
apq-pc-control/src/main/conf/apq-pc-control.conf
0 → 100644
浏览文件 @
fc8d51d8
export
JAVA_OPTS
=
"$JAVA_OPTS -Dplatform=@pkg.platform@"
export
LOG_FILENAME
=${
pkg
.
name
}.
out
export
LOADER_PATH
=${
pkg
.
installFolder
}/
conf
apq-pc-control/src/main/conf/logback.xml
0 → 100644
浏览文件 @
fc8d51d8
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration>
<configuration>
<appender
name=
"fileLogAppender"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<file>
${pkg.logFolder}/${pkg.name}.log
</file>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"
>
<fileNamePattern>
${pkg.logFolder}/${pkg.name}.%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<maxFileSize>
100MB
</maxFileSize>
<maxHistory>
30
</maxHistory>
<totalSizeCap>
3GB
</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>
%d{ISO8601} [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
</appender>
<logger
name=
"org.priusis"
level=
"INFO"
/>
<logger
name=
"org.eclipse.milo"
level=
"INFO"
/>
<logger
name=
"org.eclipse.paho"
level=
"INFO"
/>
<root
level=
"INFO"
>
<appender-ref
ref=
"fileLogAppender"
/>
</root>
</configuration>
apq-pc-control/src/main/filters/unix.properties
0 → 100644
浏览文件 @
fc8d51d8
pkg.logFolder
=
${pkg.unixLogFolder}
\ No newline at end of file
apq-pc-control/src/main/filters/windows.properties
0 → 100644
浏览文件 @
fc8d51d8
pkg.logFolder
=
${BASE}
\\
logs
pkg.winWrapperLogFolder
=
%BASE%
\\
logs
apq-pc-control/src/main/scripts/control/apq-pc-control.service
0 → 100644
浏览文件 @
fc8d51d8
[Unit]
Description=${pkg.name}
After=syslog.target
[Service]
User=${pkg.user}
ExecStart=${pkg.installFolder}/bin/${pkg.name}.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
apq-pc-control/src/main/scripts/control/deb/postinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
chown
-R
${
pkg
.user
}
:
${
pkg
.logFolder
}
chown
-R
${
pkg
.user
}
:
${
pkg
.installFolder
}
update-rc.d
${
pkg
.name
}
defaults
apq-pc-control/src/main/scripts/control/deb/postrm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
update-rc.d
-f
${
pkg
.name
}
remove
apq-pc-control/src/main/scripts/control/deb/preinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
!
getent group
${
pkg
.user
}
>
/dev/null
;
then
addgroup
--system
${
pkg
.user
}
fi
if
!
getent passwd
${
pkg
.user
}
>
/dev/null
;
then
adduser
--quiet
\
--system
\
--ingroup
${
pkg
.user
}
\
--quiet
\
--disabled-login
\
--disabled-password
\
--home
${
pkg
.installFolder
}
\
--no-create-home
\
-gecos
"Priusisiot application"
\
${
pkg
.user
}
fi
apq-pc-control/src/main/scripts/control/deb/prerm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
-e
/var/run/
${
pkg
.name
}
/
${
pkg
.name
}
.pid
]
;
then
service
${
pkg
.name
}
stop
fi
apq-pc-control/src/main/scripts/control/rpm/postinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
chown
-R
${
pkg
.user
}
:
${
pkg
.logFolder
}
chown
-R
${
pkg
.user
}
:
${
pkg
.installFolder
}
if
[
$1
-eq
1
]
;
then
# Initial installation
systemctl
--no-reload
enable
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-control/src/main/scripts/control/rpm/postrm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
$1
-ge
1
]
;
then
# Package upgrade, not uninstall
systemctl try-restart
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-control/src/main/scripts/control/rpm/preinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
getent group
${
pkg
.user
}
>
/dev/null
||
groupadd
-r
${
pkg
.user
}
getent passwd
${
pkg
.user
}
>
/dev/null
||
\
useradd
-d
${
pkg
.installFolder
}
-g
${
pkg
.user
}
-M
-r
${
pkg
.user
}
-s
/sbin/nologin
\
-c
"Priusisiot application"
apq-pc-control/src/main/scripts/control/rpm/prerm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
$1
-eq
0
]
;
then
# Package removal, not upgrade
systemctl
--no-reload
disable
--now
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-control/src/main/scripts/windows/install.bat
0 → 100644
浏览文件 @
fc8d51d8
@ECHO OFF
setlocal ENABLEEXTENSIONS
@ECHO Detecting Java version installed.
:CHECK_JAVA_64
@ECHO Detecting if it is 64 bit machine
set KEY_NAME="HKEY_LOCAL_MACHINE\Software\Wow6432Node\JavaSoft\Java Runtime Environment"
set VALUE_NAME=CurrentVersion
FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName=%%A
set ValueType=%%B
set ValueValue=%%C
)
@ECHO CurrentVersion %ValueValue%
SET KEY_NAME="%KEY_NAME:~1,-1%\%ValueValue%"
SET VALUE_NAME=JavaHome
if defined ValueName (
FOR /F "usebackq skip=2 tokens=1,2*" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName2=%%A
set ValueType2=%%B
set JRE_PATH2=%%C
if defined ValueName2 (
set ValueName = %ValueName2%
set ValueType = %ValueType2%
set ValueValue = %JRE_PATH2%
)
)
)
IF NOT "%JRE_PATH2%" == "" GOTO JAVA_INSTALLED
:CHECK_JAVA_32
@ECHO Detecting if it is 32 bit machine
set KEY_NAME="HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment"
set VALUE_NAME=CurrentVersion
FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName=%%A
set ValueType=%%B
set ValueValue=%%C
)
@ECHO CurrentVersion %ValueValue%
SET KEY_NAME="%KEY_NAME:~1,-1%\%ValueValue%"
SET VALUE_NAME=JavaHome
if defined ValueName (
FOR /F "usebackq skip=2 tokens=1,2*" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName2=%%A
set ValueType2=%%B
set JRE_PATH2=%%C
if defined ValueName2 (
set ValueName = %ValueName2%
set ValueType = %ValueType2%
set ValueValue = %JRE_PATH2%
)
)
)
IF "%JRE_PATH2%" == "" GOTO JAVA_NOT_INSTALLED
:JAVA_INSTALLED
@ECHO Java 1.8 found!
@ECHO Installing ${pkg.name} ...
%~dp0${pkg.name}.exe install
@ECHO DONE.
GOTO END
:JAVA_NOT_INSTALLED
@ECHO Java 1.8 or above is not installed
@ECHO Please go to https://java.com/ and install Java. Then retry installation.
PAUSE
GOTO END
:END
apq-pc-control/src/main/scripts/windows/service.xml
0 → 100644
浏览文件 @
fc8d51d8
<service>
<id>
${pkg.name}
</id>
<name>
${project.name}
</name>
<description>
${project.description}
</description>
<workingdirectory>
%BASE%\conf
</workingdirectory>
<logpath>
${pkg.winWrapperLogFolder}
</logpath>
<logmode>
rotate
</logmode>
<env
name=
"LOADER_PATH"
value=
"%BASE%\conf"
/>
<executable>
java
</executable>
<startargument>
-Dplatform=windows
</startargument>
<startargument>
-jar
</startargument>
<startargument>
%BASE%\lib\${pkg.name}.jar
</startargument>
</service>
apq-pc-control/src/main/scripts/windows/uninstall.bat
0 → 100644
浏览文件 @
fc8d51d8
@ECHO OFF
@ECHO Stopping ${pkg.name} ...
net stop ${pkg.name}
@ECHO Uninstalling ${pkg.name} ...
%~dp0${pkg.name}.exe uninstall
@ECHO DONE.
\ No newline at end of file
apq-pc-info/src/main/assembly/windows.xml
0 → 100644
浏览文件 @
fc8d51d8
<assembly
xmlns=
"http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd"
>
<id>
windows
</id>
<formats>
<format>
zip
</format>
</formats>
<!-- Workaround to create logs directory -->
<fileSets>
<fileSet>
<directory>
${pkg.win.dist}
</directory>
<outputDirectory>
logs
</outputDirectory>
<excludes>
<exclude>
*/**
</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>
${pkg.win.dist}/conf
</directory>
<outputDirectory>
conf
</outputDirectory>
<lineEnding>
windows
</lineEnding>
<excludes>
<exclude>
*.der
</exclude>
<exclude>
*.cer
</exclude>
<exclude>
*.pfx
</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>
${pkg.win.dist}/conf
</directory>
<outputDirectory>
conf
</outputDirectory>
<includes>
<include>
*.der
</include>
<include>
*.cer
</include>
<include>
*.pfx
</include>
</includes>
</fileSet>
</fileSets>
<files>
<file>
<source>
${project.build.directory}/${project.build.finalName}-boot.${project.packaging}
</source>
<outputDirectory>
lib
</outputDirectory>
<destName>
${pkg.name}.jar
</destName>
</file>
<file>
<source>
${pkg.win.dist}/service.exe
</source>
<outputDirectory/>
<destName>
${pkg.name}.exe
</destName>
</file>
<file>
<source>
${pkg.win.dist}/service.xml
</source>
<outputDirectory/>
<destName>
${pkg.name}.xml
</destName>
<lineEnding>
windows
</lineEnding>
</file>
<file>
<source>
${pkg.win.dist}/install.bat
</source>
<outputDirectory/>
<lineEnding>
windows
</lineEnding>
</file>
<file>
<source>
${pkg.win.dist}/uninstall.bat
</source>
<outputDirectory/>
<lineEnding>
windows
</lineEnding>
</file>
</files>
</assembly>
apq-pc-info/src/main/conf/apq-pc-info.conf
0 → 100644
浏览文件 @
fc8d51d8
export
JAVA_OPTS
=
"$JAVA_OPTS -Dplatform=@pkg.platform@"
export
LOG_FILENAME
=${
pkg
.
name
}.
out
export
LOADER_PATH
=${
pkg
.
installFolder
}/
conf
apq-pc-info/src/main/conf/logback.xml
0 → 100644
浏览文件 @
fc8d51d8
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration>
<configuration>
<appender
name=
"fileLogAppender"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<file>
${pkg.logFolder}/${pkg.name}.log
</file>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"
>
<fileNamePattern>
${pkg.logFolder}/${pkg.name}.%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<maxFileSize>
100MB
</maxFileSize>
<maxHistory>
30
</maxHistory>
<totalSizeCap>
3GB
</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>
%d{ISO8601} [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
</appender>
<logger
name=
"org.priusis"
level=
"INFO"
/>
<logger
name=
"org.eclipse.milo"
level=
"INFO"
/>
<logger
name=
"org.eclipse.paho"
level=
"INFO"
/>
<root
level=
"INFO"
>
<appender-ref
ref=
"fileLogAppender"
/>
</root>
</configuration>
apq-pc-info/src/main/filters/unix.properties
0 → 100644
浏览文件 @
fc8d51d8
pkg.logFolder
=
${pkg.unixLogFolder}
\ No newline at end of file
apq-pc-info/src/main/filters/windows.properties
0 → 100644
浏览文件 @
fc8d51d8
pkg.logFolder
=
${BASE}
\\
logs
pkg.winWrapperLogFolder
=
%BASE%
\\
logs
apq-pc-info/src/main/scripts/control/apq-pc-info.service
0 → 100644
浏览文件 @
fc8d51d8
[Unit]
Description=${pkg.name}
After=syslog.target
[Service]
User=${pkg.user}
ExecStart=${pkg.installFolder}/bin/${pkg.name}.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
apq-pc-info/src/main/scripts/control/deb/postinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
chown
-R
${
pkg
.user
}
:
${
pkg
.logFolder
}
chown
-R
${
pkg
.user
}
:
${
pkg
.installFolder
}
update-rc.d
${
pkg
.name
}
defaults
apq-pc-info/src/main/scripts/control/deb/postrm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
update-rc.d
-f
${
pkg
.name
}
remove
apq-pc-info/src/main/scripts/control/deb/preinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
!
getent group
${
pkg
.user
}
>
/dev/null
;
then
addgroup
--system
${
pkg
.user
}
fi
if
!
getent passwd
${
pkg
.user
}
>
/dev/null
;
then
adduser
--quiet
\
--system
\
--ingroup
${
pkg
.user
}
\
--quiet
\
--disabled-login
\
--disabled-password
\
--home
${
pkg
.installFolder
}
\
--no-create-home
\
-gecos
"Priusisiot application"
\
${
pkg
.user
}
fi
apq-pc-info/src/main/scripts/control/deb/prerm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
-e
/var/run/
${
pkg
.name
}
/
${
pkg
.name
}
.pid
]
;
then
service
${
pkg
.name
}
stop
fi
apq-pc-info/src/main/scripts/control/rpm/postinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
chown
-R
${
pkg
.user
}
:
${
pkg
.logFolder
}
chown
-R
${
pkg
.user
}
:
${
pkg
.installFolder
}
if
[
$1
-eq
1
]
;
then
# Initial installation
systemctl
--no-reload
enable
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-info/src/main/scripts/control/rpm/postrm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
$1
-ge
1
]
;
then
# Package upgrade, not uninstall
systemctl try-restart
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-info/src/main/scripts/control/rpm/preinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
getent group
${
pkg
.user
}
>
/dev/null
||
groupadd
-r
${
pkg
.user
}
getent passwd
${
pkg
.user
}
>
/dev/null
||
\
useradd
-d
${
pkg
.installFolder
}
-g
${
pkg
.user
}
-M
-r
${
pkg
.user
}
-s
/sbin/nologin
\
-c
"Priusisiot application"
apq-pc-info/src/main/scripts/control/rpm/prerm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
$1
-eq
0
]
;
then
# Package removal, not upgrade
systemctl
--no-reload
disable
--now
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-info/src/main/scripts/windows/install.bat
0 → 100644
浏览文件 @
fc8d51d8
@ECHO OFF
setlocal ENABLEEXTENSIONS
@ECHO Detecting Java version installed.
:CHECK_JAVA_64
@ECHO Detecting if it is 64 bit machine
set KEY_NAME="HKEY_LOCAL_MACHINE\Software\Wow6432Node\JavaSoft\Java Runtime Environment"
set VALUE_NAME=CurrentVersion
FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName=%%A
set ValueType=%%B
set ValueValue=%%C
)
@ECHO CurrentVersion %ValueValue%
SET KEY_NAME="%KEY_NAME:~1,-1%\%ValueValue%"
SET VALUE_NAME=JavaHome
if defined ValueName (
FOR /F "usebackq skip=2 tokens=1,2*" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName2=%%A
set ValueType2=%%B
set JRE_PATH2=%%C
if defined ValueName2 (
set ValueName = %ValueName2%
set ValueType = %ValueType2%
set ValueValue = %JRE_PATH2%
)
)
)
IF NOT "%JRE_PATH2%" == "" GOTO JAVA_INSTALLED
:CHECK_JAVA_32
@ECHO Detecting if it is 32 bit machine
set KEY_NAME="HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment"
set VALUE_NAME=CurrentVersion
FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName=%%A
set ValueType=%%B
set ValueValue=%%C
)
@ECHO CurrentVersion %ValueValue%
SET KEY_NAME="%KEY_NAME:~1,-1%\%ValueValue%"
SET VALUE_NAME=JavaHome
if defined ValueName (
FOR /F "usebackq skip=2 tokens=1,2*" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName2=%%A
set ValueType2=%%B
set JRE_PATH2=%%C
if defined ValueName2 (
set ValueName = %ValueName2%
set ValueType = %ValueType2%
set ValueValue = %JRE_PATH2%
)
)
)
IF "%JRE_PATH2%" == "" GOTO JAVA_NOT_INSTALLED
:JAVA_INSTALLED
@ECHO Java 1.8 found!
@ECHO Installing ${pkg.name} ...
%~dp0${pkg.name}.exe install
@ECHO DONE.
GOTO END
:JAVA_NOT_INSTALLED
@ECHO Java 1.8 or above is not installed
@ECHO Please go to https://java.com/ and install Java. Then retry installation.
PAUSE
GOTO END
:END
apq-pc-info/src/main/scripts/windows/service.xml
0 → 100644
浏览文件 @
fc8d51d8
<service>
<id>
${pkg.name}
</id>
<name>
${project.name}
</name>
<description>
${project.description}
</description>
<workingdirectory>
%BASE%\conf
</workingdirectory>
<logpath>
${pkg.winWrapperLogFolder}
</logpath>
<logmode>
rotate
</logmode>
<env
name=
"LOADER_PATH"
value=
"%BASE%\conf"
/>
<executable>
java
</executable>
<startargument>
-Dplatform=windows
</startargument>
<startargument>
-jar
</startargument>
<startargument>
%BASE%\lib\${pkg.name}.jar
</startargument>
</service>
apq-pc-info/src/main/scripts/windows/uninstall.bat
0 → 100644
浏览文件 @
fc8d51d8
@ECHO OFF
@ECHO Stopping ${pkg.name} ...
net stop ${pkg.name}
@ECHO Uninstalling ${pkg.name} ...
%~dp0${pkg.name}.exe uninstall
@ECHO DONE.
\ No newline at end of file
apq-pc-register/src/main/assembly/windows.xml
0 → 100644
浏览文件 @
fc8d51d8
<assembly
xmlns=
"http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd"
>
<id>
windows
</id>
<formats>
<format>
zip
</format>
</formats>
<!-- Workaround to create logs directory -->
<fileSets>
<fileSet>
<directory>
${pkg.win.dist}
</directory>
<outputDirectory>
logs
</outputDirectory>
<excludes>
<exclude>
*/**
</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>
${pkg.win.dist}/conf
</directory>
<outputDirectory>
conf
</outputDirectory>
<lineEnding>
windows
</lineEnding>
<excludes>
<exclude>
*.der
</exclude>
<exclude>
*.cer
</exclude>
<exclude>
*.pfx
</exclude>
</excludes>
</fileSet>
<fileSet>
<directory>
${pkg.win.dist}/conf
</directory>
<outputDirectory>
conf
</outputDirectory>
<includes>
<include>
*.der
</include>
<include>
*.cer
</include>
<include>
*.pfx
</include>
</includes>
</fileSet>
</fileSets>
<files>
<file>
<source>
${project.build.directory}/${project.build.finalName}-boot.${project.packaging}
</source>
<outputDirectory>
lib
</outputDirectory>
<destName>
${pkg.name}.jar
</destName>
</file>
<file>
<source>
${pkg.win.dist}/service.exe
</source>
<outputDirectory/>
<destName>
${pkg.name}.exe
</destName>
</file>
<file>
<source>
${pkg.win.dist}/service.xml
</source>
<outputDirectory/>
<destName>
${pkg.name}.xml
</destName>
<lineEnding>
windows
</lineEnding>
</file>
<file>
<source>
${pkg.win.dist}/install.bat
</source>
<outputDirectory/>
<lineEnding>
windows
</lineEnding>
</file>
<file>
<source>
${pkg.win.dist}/uninstall.bat
</source>
<outputDirectory/>
<lineEnding>
windows
</lineEnding>
</file>
</files>
</assembly>
apq-pc-register/src/main/conf/apq-pc-register.conf
0 → 100644
浏览文件 @
fc8d51d8
export
JAVA_OPTS
=
"$JAVA_OPTS -Dplatform=@pkg.platform@"
export
LOG_FILENAME
=${
pkg
.
name
}.
out
export
LOADER_PATH
=${
pkg
.
installFolder
}/
conf
apq-pc-register/src/main/conf/logback.xml
0 → 100644
浏览文件 @
fc8d51d8
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration>
<configuration>
<appender
name=
"fileLogAppender"
class=
"ch.qos.logback.core.rolling.RollingFileAppender"
>
<file>
${pkg.logFolder}/${pkg.name}.log
</file>
<rollingPolicy
class=
"ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"
>
<fileNamePattern>
${pkg.logFolder}/${pkg.name}.%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<maxFileSize>
100MB
</maxFileSize>
<maxHistory>
30
</maxHistory>
<totalSizeCap>
3GB
</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>
%d{ISO8601} [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
</appender>
<logger
name=
"org.priusis"
level=
"INFO"
/>
<logger
name=
"org.eclipse.milo"
level=
"INFO"
/>
<logger
name=
"org.eclipse.paho"
level=
"INFO"
/>
<root
level=
"INFO"
>
<appender-ref
ref=
"fileLogAppender"
/>
</root>
</configuration>
apq-pc-register/src/main/filters/unix.properties
0 → 100644
浏览文件 @
fc8d51d8
pkg.logFolder
=
${pkg.unixLogFolder}
\ No newline at end of file
apq-pc-register/src/main/filters/windows.properties
0 → 100644
浏览文件 @
fc8d51d8
pkg.logFolder
=
${BASE}
\\
logs
pkg.winWrapperLogFolder
=
%BASE%
\\
logs
apq-pc-register/src/main/scripts/control/apq-pc-register.service
0 → 100644
浏览文件 @
fc8d51d8
[Unit]
Description=${pkg.name}
After=syslog.target
[Service]
User=${pkg.user}
ExecStart=${pkg.installFolder}/bin/${pkg.name}.jar
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
apq-pc-register/src/main/scripts/control/deb/postinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
chown
-R
${
pkg
.user
}
:
${
pkg
.logFolder
}
chown
-R
${
pkg
.user
}
:
${
pkg
.installFolder
}
update-rc.d
${
pkg
.name
}
defaults
apq-pc-register/src/main/scripts/control/deb/postrm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
update-rc.d
-f
${
pkg
.name
}
remove
apq-pc-register/src/main/scripts/control/deb/preinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
!
getent group
${
pkg
.user
}
>
/dev/null
;
then
addgroup
--system
${
pkg
.user
}
fi
if
!
getent passwd
${
pkg
.user
}
>
/dev/null
;
then
adduser
--quiet
\
--system
\
--ingroup
${
pkg
.user
}
\
--quiet
\
--disabled-login
\
--disabled-password
\
--home
${
pkg
.installFolder
}
\
--no-create-home
\
-gecos
"Priusisiot application"
\
${
pkg
.user
}
fi
apq-pc-register/src/main/scripts/control/deb/prerm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
-e
/var/run/
${
pkg
.name
}
/
${
pkg
.name
}
.pid
]
;
then
service
${
pkg
.name
}
stop
fi
apq-pc-register/src/main/scripts/control/rpm/postinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
chown
-R
${
pkg
.user
}
:
${
pkg
.logFolder
}
chown
-R
${
pkg
.user
}
:
${
pkg
.installFolder
}
if
[
$1
-eq
1
]
;
then
# Initial installation
systemctl
--no-reload
enable
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-register/src/main/scripts/control/rpm/postrm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
$1
-ge
1
]
;
then
# Package upgrade, not uninstall
systemctl try-restart
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-register/src/main/scripts/control/rpm/preinst
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
getent group
${
pkg
.user
}
>
/dev/null
||
groupadd
-r
${
pkg
.user
}
getent passwd
${
pkg
.user
}
>
/dev/null
||
\
useradd
-d
${
pkg
.installFolder
}
-g
${
pkg
.user
}
-M
-r
${
pkg
.user
}
-s
/sbin/nologin
\
-c
"Priusisiot application"
apq-pc-register/src/main/scripts/control/rpm/prerm
0 → 100644
浏览文件 @
fc8d51d8
#!/bin/sh
if
[
$1
-eq
0
]
;
then
# Package removal, not upgrade
systemctl
--no-reload
disable
--now
${
pkg
.name
}
.service
>
/dev/null 2>&1
||
:
fi
apq-pc-register/src/main/scripts/windows/install.bat
0 → 100644
浏览文件 @
fc8d51d8
@ECHO OFF
setlocal ENABLEEXTENSIONS
@ECHO Detecting Java version installed.
:CHECK_JAVA_64
@ECHO Detecting if it is 64 bit machine
set KEY_NAME="HKEY_LOCAL_MACHINE\Software\Wow6432Node\JavaSoft\Java Runtime Environment"
set VALUE_NAME=CurrentVersion
FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName=%%A
set ValueType=%%B
set ValueValue=%%C
)
@ECHO CurrentVersion %ValueValue%
SET KEY_NAME="%KEY_NAME:~1,-1%\%ValueValue%"
SET VALUE_NAME=JavaHome
if defined ValueName (
FOR /F "usebackq skip=2 tokens=1,2*" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName2=%%A
set ValueType2=%%B
set JRE_PATH2=%%C
if defined ValueName2 (
set ValueName = %ValueName2%
set ValueType = %ValueType2%
set ValueValue = %JRE_PATH2%
)
)
)
IF NOT "%JRE_PATH2%" == "" GOTO JAVA_INSTALLED
:CHECK_JAVA_32
@ECHO Detecting if it is 32 bit machine
set KEY_NAME="HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment"
set VALUE_NAME=CurrentVersion
FOR /F "usebackq skip=2 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName=%%A
set ValueType=%%B
set ValueValue=%%C
)
@ECHO CurrentVersion %ValueValue%
SET KEY_NAME="%KEY_NAME:~1,-1%\%ValueValue%"
SET VALUE_NAME=JavaHome
if defined ValueName (
FOR /F "usebackq skip=2 tokens=1,2*" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO (
set ValueName2=%%A
set ValueType2=%%B
set JRE_PATH2=%%C
if defined ValueName2 (
set ValueName = %ValueName2%
set ValueType = %ValueType2%
set ValueValue = %JRE_PATH2%
)
)
)
IF "%JRE_PATH2%" == "" GOTO JAVA_NOT_INSTALLED
:JAVA_INSTALLED
@ECHO Java 1.8 found!
@ECHO Installing ${pkg.name} ...
%~dp0${pkg.name}.exe install
@ECHO DONE.
GOTO END
:JAVA_NOT_INSTALLED
@ECHO Java 1.8 or above is not installed
@ECHO Please go to https://java.com/ and install Java. Then retry installation.
PAUSE
GOTO END
:END
apq-pc-register/src/main/scripts/windows/service.xml
0 → 100644
浏览文件 @
fc8d51d8
<service>
<id>
${pkg.name}
</id>
<name>
${project.name}
</name>
<description>
${project.description}
</description>
<workingdirectory>
%BASE%\conf
</workingdirectory>
<logpath>
${pkg.winWrapperLogFolder}
</logpath>
<logmode>
rotate
</logmode>
<env
name=
"LOADER_PATH"
value=
"%BASE%\conf"
/>
<executable>
java
</executable>
<startargument>
-Dplatform=windows
</startargument>
<startargument>
-jar
</startargument>
<startargument>
%BASE%\lib\${pkg.name}.jar
</startargument>
</service>
apq-pc-register/src/main/scripts/windows/uninstall.bat
0 → 100644
浏览文件 @
fc8d51d8
@ECHO OFF
@ECHO Stopping ${pkg.name} ...
net stop ${pkg.name}
@ECHO Uninstalling ${pkg.name} ...
%~dp0${pkg.name}.exe uninstall
@ECHO DONE.
\ No newline at end of file
tools/netty-mqtt/pom.xml
浏览文件 @
fc8d51d8
...
...
@@ -21,7 +21,7 @@
<project.reporting.outputEncoding>
UTF-8
</project.reporting.outputEncoding>
<maven.build.timestamp.format>
yyyyMMdd
</maven.build.timestamp.format>
<maven-compiler-plugin.version>
3.7.0
</maven-compiler-plugin.version>
<j
dk.version>
1.8
</jdk
.version>
<j
ava.version>
1.8
</java
.version>
<netty.version>
4.1.49.Final
</netty.version>
<guava.version>
28.2-jre
</guava.version>
...
...
@@ -50,6 +50,19 @@
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-compiler-plugin
</artifactId>
<version>
2.5.1
</version>
<configuration>
<source>
${java.version}
</source>
<target>
${java.version}
</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<extensions>
<extension>
<groupId>
org.apache.maven.wagon
</groupId>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论