Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
LinuxSuRen
jenkins
提交
45dec68e
J
jenkins
项目概览
LinuxSuRen
/
jenkins
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jenkins
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
45dec68e
编写于
7月 15, 2014
作者:
J
Jesse Glick
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
FingerprintCleanupThread ought to write messages to its saved log file.
上级
84d49cee
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
10 addition
and
9 deletion
+10
-9
core/src/main/java/hudson/model/AsyncPeriodicWork.java
core/src/main/java/hudson/model/AsyncPeriodicWork.java
+1
-2
core/src/main/java/hudson/model/FingerprintCleanupThread.java
.../src/main/java/hudson/model/FingerprintCleanupThread.java
+6
-7
core/src/main/java/hudson/model/PeriodicWork.java
core/src/main/java/hudson/model/PeriodicWork.java
+3
-0
未找到文件。
core/src/main/java/hudson/model/AsyncPeriodicWork.java
浏览文件 @
45dec68e
...
...
@@ -3,8 +3,6 @@ package hudson.model;
import
hudson.security.ACL
;
import
hudson.util.StreamTaskListener
;
import
jenkins.model.Jenkins
;
import
org.acegisecurity.context.SecurityContext
;
import
org.acegisecurity.context.SecurityContextHolder
;
import
java.io.File
;
import
java.io.IOException
;
...
...
@@ -36,6 +34,7 @@ public abstract class AsyncPeriodicWork extends PeriodicWork {
/**
* Schedules this periodic work now in a new thread, if one isn't already running.
*/
@SuppressWarnings
(
"deprecation"
)
// in this case we really want to use PeriodicWork.logger since it reports the impl class
public
final
void
doRun
()
{
try
{
if
(
thread
!=
null
&&
thread
.
isAlive
())
{
...
...
core/src/main/java/hudson/model/FingerprintCleanupThread.java
浏览文件 @
45dec68e
...
...
@@ -29,7 +29,6 @@ import jenkins.model.Jenkins;
import
java.io.File
;
import
java.io.FileFilter
;
import
java.io.IOException
;
import
java.util.logging.Level
;
import
java.util.regex.Pattern
;
/**
...
...
@@ -72,7 +71,7 @@ public final class FingerprintCleanupThread extends AsyncPeriodicWork {
for
(
File
file2
:
files2
)
{
File
[]
files3
=
file2
.
listFiles
(
FINGERPRINTFILE_FILTER
);
for
(
File
file3
:
files3
)
{
if
(
check
(
file3
))
if
(
check
(
file3
,
listener
))
numFiles
++;
}
deleteIfEmpty
(
file2
);
...
...
@@ -81,7 +80,7 @@ public final class FingerprintCleanupThread extends AsyncPeriodicWork {
}
}
l
ogger
.
log
(
Level
.
INFO
,
"Cleaned up "
+
numFiles
+
" records"
);
l
istener
.
getLogger
().
println
(
"Cleaned up "
+
numFiles
+
" records"
);
}
/**
...
...
@@ -97,22 +96,22 @@ public final class FingerprintCleanupThread extends AsyncPeriodicWork {
/**
* Examines the file and returns true if a file was deleted.
*/
private
boolean
check
(
File
fingerprintFile
)
{
private
boolean
check
(
File
fingerprintFile
,
TaskListener
listener
)
{
try
{
Fingerprint
fp
=
Fingerprint
.
load
(
fingerprintFile
);
if
(
fp
==
null
||
!
fp
.
isAlive
())
{
l
ogger
.
fine
(
"deleting obsolete "
+
fingerprintFile
);
l
istener
.
getLogger
().
println
(
"deleting obsolete "
+
fingerprintFile
);
fingerprintFile
.
delete
();
return
true
;
}
else
{
// get the fingerprint in the official map so have the changes visible to Jenkins
// otherwise the mutation made in FingerprintMap can override our trimming.
l
ogger
.
finer
(
"possibly trimming "
+
fingerprintFile
);
l
istener
.
getLogger
().
println
(
"possibly trimming "
+
fingerprintFile
);
fp
=
Jenkins
.
getInstance
().
_getFingerprint
(
fp
.
getHashString
());
return
fp
.
trim
();
}
}
catch
(
IOException
e
)
{
logger
.
log
(
Level
.
WARNING
,
"Failed to process "
+
fingerprintFile
,
e
);
e
.
printStackTrace
(
listener
.
error
(
"Failed to process "
+
fingerprintFile
)
);
return
false
;
}
}
...
...
core/src/main/java/hudson/model/PeriodicWork.java
浏览文件 @
45dec68e
...
...
@@ -57,6 +57,9 @@ import static hudson.init.InitMilestone.JOB_LOADED;
* @see AsyncPeriodicWork
*/
public
abstract
class
PeriodicWork
extends
SafeTimerTask
implements
ExtensionPoint
{
/** @deprecated Use your own logger, or send messages to the logger in {@link AsyncPeriodicWork#execute}. */
@SuppressWarnings
(
"NonConstantLogger"
)
protected
final
Logger
logger
=
Logger
.
getLogger
(
getClass
().
getName
());
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录