Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
adaptation-master
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
912协同工作系统
项目监控管理工具
adaptation-master
Commits
2ddf50c9
提交
2ddf50c9
authored
12月 24, 2019
作者:
zhangshuang
浏览文件
操作
浏览文件
下载
差异文件
zs
上级
b2332a72
f68da83e
显示空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
88 行增加
和
34 行删除
+88
-34
pom.xml
pom.xml
+10
-13
WebSocketServer.java
.../adaptationmaster/adaptor/controller/WebSocketServer.java
+1
-0
Rule.java
...n/java/com/zjty/adaptationmaster/adaptor/entity/Rule.java
+1
-0
Const.java
...main/java/com/zjty/adaptationmaster/base/enums/Const.java
+1
-4
Adaptor.java
src/main/java/com/zjty/adaptationmaster/utils/Adaptor.java
+9
-4
ApusicDeployer.java
.../java/com/zjty/adaptationmaster/utils/ApusicDeployer.java
+2
-2
MavenCompiler.java
...n/java/com/zjty/adaptationmaster/utils/MavenCompiler.java
+5
-0
ReadedFileTask.java
.../java/com/zjty/adaptationmaster/utils/ReadedFileTask.java
+28
-7
application-dev.properties
src/main/resources/application-dev.properties
+4
-4
TestDemo.java
src/test/java/com/zjty/adaptationmaster/TestDemo.java
+27
-0
没有找到文件。
pom.xml
浏览文件 @
2ddf50c9
...
...
@@ -25,10 +25,10 @@
</dependency>
<!--webSocket 后台向前端推送消息-->
<
!--<
dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-websocket
</artifactId>
</dependency>
-->
</dependency>
<dependency>
<groupId>
org.postgresql
</groupId>
<artifactId>
postgresql
</artifactId>
...
...
@@ -95,11 +95,11 @@
<artifactId>
commons-compress
</artifactId>
<version>
1.8.1
</version>
</dependency>
<!--
<dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-websocket
</artifactId>
<!– <version>4.3.17.RELEASE</version>–>
</dependency>
-->
<!-- <version>4.3.17.RELEASE</version>-->
</dependency>
<dependency>
<groupId>
junit
</groupId>
<artifactId>
junit
</artifactId>
...
...
@@ -131,6 +131,11 @@
<artifactId>
snakeyaml
</artifactId>
<version>
1.25
</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.apache.zookeeper</groupId>-->
<!-- <artifactId>zookeeper</artifactId>-->
<!-- <version>3.3.4</version>-->
<!-- </dependency>-->
<dependency>
<groupId>
ant
</groupId>
<artifactId>
ant
</artifactId>
...
...
@@ -155,14 +160,6 @@
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-maven-plugin
</artifactId>
</plugin>
<plugin>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-surefire-plugin
</artifactId>
<version>
2.5
</version>
<configuration>
<skip>
true
</skip>
</configuration>
</plugin>
</plugins>
</build>
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/controller/WebSocketServer.java
浏览文件 @
2ddf50c9
...
...
@@ -69,6 +69,7 @@ public class WebSocketServer {
this
.
session
.
getBasicRemote
().
sendText
(
message
);
}
public
static
void
sendIn
(
String
sessionId
,
String
message
)
throws
IOException
{
//System.out.println(message);
try
{
map
.
get
(
sessionId
).
sendMessage
(
message
);
}
catch
(
Exception
e
){
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/entity/Rule.java
浏览文件 @
2ddf50c9
...
...
@@ -32,6 +32,7 @@ public class Rule {
//private MatchType pathMatchType;//文件匹配方式 路径/文件名/后缀
private
String
path
;
//文件路径匹配
private
String
des
;
//private TextMatch textMatching;//文本匹配方式 全文匹配/正则匹配
//private DealWay dealWay;//替换,在匹配字之前插入,在匹配字之后插入
...
...
src/main/java/com/zjty/adaptationmaster/base/enums/Const.java
浏览文件 @
2ddf50c9
package
com
.
zjty
.
adaptationmaster
.
base
.
enums
;
import
org.apache.tomcat.websocket.server.WsFilter
;
import
org.junit.jupiter.api.Test
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Value
;
...
...
@@ -44,7 +41,7 @@ public class Const {
public
static
Map
<
String
,
Long
>
transferCountMap
=
new
ConcurrentHashMap
<>();
public
static
final
String
MAVENHOME
=
"
D:\\Program Files\\apache-maven-3.5.4-bin\\
apache-maven-3.5.4"
;
public
static
final
String
MAVENHOME
=
"
/opt/
apache-maven-3.5.4"
;
public
static
final
String
CTLPATH
=
"/home/taiyuan/桌面/AAS-V9.0/bin/appctl"
;
public
static
final
String
CTLPWD
=
"Qwert123!@#"
;
}
src/main/java/com/zjty/adaptationmaster/utils/Adaptor.java
浏览文件 @
2ddf50c9
...
...
@@ -11,6 +11,8 @@ import com.zjty.adaptationmaster.base.response.ServerResponse;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
...
...
@@ -27,11 +29,12 @@ import java.util.regex.Pattern;
@Component
public
class
Adaptor
{
Logger
logger
=
LoggerFactory
.
getLogger
(
getClass
());
//@Autowired
//private AdaptationDetailLogEntityDao adaptationDetailLogEntityDao;
@Autowired
private
OriginalFileDao
originalFileDao
;
@Autowired
private
ProjectDao
projectDao
;
private
String
uuid
;
...
...
@@ -107,8 +110,10 @@ public class Adaptor {
}
if
(
match
)
{
System
.
out
.
println
(
"match"
);
System
.
out
.
println
(
file
);
// logger.info();
// System.out.println("match");
// System.out.println(file);
//logger.info("找到文件"+file.getFileName());
String
storePath
=
storePathParent
+
"/"
+
UUID
.
randomUUID
().
toString
()+
"/"
+
file
.
getFileName
();
//原先文件的新地址
Path
originalPath
=
Paths
.
get
(
basePath
+
storePath
);
...
...
@@ -119,7 +124,7 @@ public class Adaptor {
//Files.copy(file,originalPath);
Files
.
move
(
file
,
originalPath
);
//splitedFile.setDeal(true);
WebSocketServer
.
sendIn
(
uuid
,
TimeUtil
.
getNowDate
()+
"内容替换:过滤文件"
+
project
.
getProject
Name
());
//WebSocketServer.sendIn(uuid,TimeUtil.getNowDate()+"内容替换:过滤文件"+project.getProjectName()+file.getFile
Name());
//System.out.println();
if
(
attrs
.
size
()
>
LIMIT
)
{
System
.
out
.
println
(
"找到大文件"
+
file
);
...
...
src/main/java/com/zjty/adaptationmaster/utils/ApusicDeployer.java
浏览文件 @
2ddf50c9
...
...
@@ -37,7 +37,7 @@ public class ApusicDeployer {
outputStream
.
write
(
password
.
getBytes
());
outputStream
.
flush
();
outputStream
.
close
();
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
exec
.
getInputStream
(),
"
GBK
"
));
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
exec
.
getInputStream
(),
"
UTF-8
"
));
boolean
titleEnd
=
false
;
String
line
=
null
;
while
((
line
=
reader
.
readLine
())
!=
null
)
{
...
...
@@ -80,7 +80,7 @@ public class ApusicDeployer {
outputStream
.
write
(
password
.
getBytes
());
outputStream
.
flush
();
outputStream
.
close
();
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
exec
.
getInputStream
(),
"
GBK
"
));
BufferedReader
reader
=
new
BufferedReader
(
new
InputStreamReader
(
exec
.
getInputStream
(),
"
UTF-8
"
));
String
line
=
null
;
while
((
line
=
reader
.
readLine
())
!=
null
)
{
WebSocketServer
.
sendIn
(
webSocketName
,
TimeUtil
.
getNowDate
()+
"自动部署:"
+
projectName
+
line
);
...
...
src/main/java/com/zjty/adaptationmaster/utils/MavenCompiler.java
浏览文件 @
2ddf50c9
...
...
@@ -24,6 +24,10 @@ public class MavenCompiler {
public
void
compiler
(){
System
.
out
.
print
(
"wwwwwww"
);
InvocationRequest
request1
=
new
DefaultInvocationRequest
();
request1
.
setPomFile
(
new
File
(
project
.
getReport
().
getCompileFilePath
()));
request1
.
setGoals
(
Collections
.
singletonList
(
"clean"
));
InvocationRequest
request
=
new
DefaultInvocationRequest
();
request
.
setPomFile
(
new
File
(
project
.
getReport
().
getCompileFilePath
()));
request
.
setGoals
(
Collections
.
singletonList
(
"package"
));
...
...
@@ -39,6 +43,7 @@ public class MavenCompiler {
}
});
try
{
invoker
.
execute
(
request1
);
InvocationResult
execute
=
invoker
.
execute
(
request
);
CommandLineException
executionException
=
execute
.
getExecutionException
();
if
(
executionException
==
null
){
...
...
src/main/java/com/zjty/adaptationmaster/utils/ReadedFileTask.java
浏览文件 @
2ddf50c9
...
...
@@ -6,6 +6,8 @@ import lombok.AllArgsConstructor;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.apache.tomcat.websocket.server.WsServerContainer
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
java.io.*
;
import
java.nio.file.Path
;
...
...
@@ -16,6 +18,7 @@ import java.util.Properties;
public
class
ReadedFileTask
implements
Runnable
{
Logger
logger
=
LoggerFactory
.
getLogger
(
getClass
());
private
String
projectName
;
private
String
uuid
;
...
...
@@ -42,10 +45,11 @@ public class ReadedFileTask implements Runnable {
@Override
public
void
run
()
{
System
.
out
.
println
(
"进来线程"
);
//
System.out.println("进来线程");
for
(
ReadedFile
readedFile:
readedFiles
)
{
boolean
match
=
false
;
String
content
=
readedFile
.
getContent
();
System
.
out
.
println
(
"规则数量"
+
readedFile
.
getThisMatchedRule
().
size
());
//
System.out.println("规则数量" + readedFile.getThisMatchedRule().size());
for
(
Rule
entity
:
readedFile
.
getThisMatchedRule
())
{
//在改动的地方加日志
// int i = content.indexOf(entity.getTarget());
...
...
@@ -54,6 +58,7 @@ public class ReadedFileTask implements Runnable {
String
replace
=
entity
.
getReplacing
();
String
[]
split
;
if
(
replace
.
contains
(
"*"
))
{
logger
.
info
(
"目标文本包含*,要记录*中的内容"
);
split
=
entity
.
getTarget
().
split
(
"\\*"
);
int
i
=
content
.
indexOf
(
split
[
0
]);
int
i1
=
content
.
indexOf
(
split
[
1
],
i
+
split
[
0
].
length
());
...
...
@@ -62,17 +67,34 @@ public class ReadedFileTask implements Runnable {
replace
=
split1
[
0
]+
temp
+
split1
[
1
];
content
=
content
.
substring
(
0
,
i
)+
replace
+
content
.
substring
(
i1
);
}
else
{
if
(
content
.
contains
(
entity
.
getTarget
())){
try
{
WebSocketServer
.
sendIn
(
uuid
,
TimeUtil
.
getNowDate
()
+
" 代码替换:在文件"
+
readedFile
.
getPath
().
getFileName
()
+
"中,找到关键字:\""
+
entity
.
getTarget
()+
"\",替换为"
+
replace
);
//"替换文件,找到文件"+ readedFile.getPath().getFileName());
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
match
=
true
;
logger
.
info
(
"找到目标"
+
readedFile
.
getPath
().
getFileName
()+
"目标:"
+
entity
.
getTarget
());
}
content
=
content
.
replaceAll
(
entity
.
getTarget
(),
replace
);
// if(match){
// logger.info(content);
// }
}
System
.
out
.
println
(
"处理完成"
);
//
System.out.println("处理完成");
}
try
{
if
(
bySort
!=
null
)
{
System
.
out
.
println
(
"bysort"
);
//
System.out.println("bysort");
bySort
.
insert
(
index
,
content
);
}
else
{
System
.
out
.
println
(
"notbysort"
);
WebSocketServer
.
sendIn
(
uuid
,
TimeUtil
.
getNowDate
()+
"内容替换:文件写出"
+
readedFile
.
getPath
().
getFileName
());
//System.out.println("notbysort");
//logger.info(TimeUtil.getNowDate()+"内容替换:文件写出"+readedFile.getPath().getFileName());
if
(
match
)
{
//System.out.println(TimeUtil.getNowDate() + "内容替换:文件正在写出" + readedFile.getPath().getFileName());
//WebSocketServer.sendIn(uuid, TimeUtil.getNowDate() + "内容替换:文件写出" + readedFile.getPath().getFileName());
}
File
file
=
readedFile
.
getPath
().
toFile
();
file
.
createNewFile
();
OutputStreamWriter
contentWriter
=
new
OutputStreamWriter
(
new
FileOutputStream
(
file
));
...
...
@@ -82,7 +104,6 @@ public class ReadedFileTask implements Runnable {
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}
...
...
src/main/resources/application-dev.properties
浏览文件 @
2ddf50c9
# mysql数据库配置
spring.datasource.driver-class-name
=
com.mysql.cj.jdbc
.Driver
spring.datasource.url
=
jdbc:
mysql://localhost:330
6/adaptation?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
spring.datasource.username
=
root
spring.datasource.password
=
root
spring.datasource.driver-class-name
=
org.postgresql
.Driver
spring.datasource.url
=
jdbc:
postgresql://localhost:586
6/adaptation?useSSL=false&serverTimezone=UTC&characterEncoding=utf-8
spring.datasource.username
=
sysdba
spring.datasource.password
=
highgo@123
src/test/java/com/zjty/adaptationmaster/TestDemo.java
0 → 100644
浏览文件 @
2ddf50c9
package
com
.
zjty
.
adaptationmaster
;
import
com.zjty.adaptationmaster.adaptor.entity.Project
;
import
com.zjty.adaptationmaster.adaptor.entity.Rule
;
import
com.zjty.adaptationmaster.utils.Adaptor
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
TestDemo
{
public
static
void
main
(
String
[]
args
)
{
Rule
rule
=
new
Rule
();
rule
.
setPath
(
"*.*"
);
rule
.
setTarget
(
"OpenDoc"
);
rule
.
setReplacing
(
"OpenOfd"
);
List
ruleList
=
new
ArrayList
();
ruleList
.
add
(
rule
);
Project
project
=
new
Project
();
project
.
setCodeUrl
(
"D:\\project\\page1"
);
project
.
setProjectName
(
"aaa"
);
Adaptor
adaptor
=
new
Adaptor
();
adaptor
.
setRuleList
(
ruleList
);
adaptor
.
setProject
(
project
);
adaptor
.
doAdapt
();
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论