Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Forever310
druid
提交
f3d6bdc7
D
druid
项目概览
Forever310
/
druid
与 Fork 源项目一致
从无法访问的项目Fork
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
druid
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
f3d6bdc7
编写于
1月 09, 2014
作者:
F
fjy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix GUI
上级
96caf2d5
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
67 addition
and
24 deletion
+67
-24
server/src/main/java/io/druid/server/coordinator/rules/ForeverLoadRule.java
...va/io/druid/server/coordinator/rules/ForeverLoadRule.java
+2
-1
server/src/main/resources/static/css/rules.css
server/src/main/resources/static/css/rules.css
+2
-1
server/src/main/resources/static/js/rules-0.0.1.js
server/src/main/resources/static/js/rules-0.0.1.js
+63
-22
未找到文件。
server/src/main/java/io/druid/server/coordinator/rules/ForeverLoadRule.java
浏览文件 @
f3d6bdc7
...
...
@@ -57,7 +57,8 @@ public class ForeverLoadRule extends LoadRule
@Override
public
int
getNumReplicants
(
String
tier
)
{
return
tieredReplicants
.
get
(
tier
);
Integer
retVal
=
tieredReplicants
.
get
(
tier
);
return
(
retVal
==
null
)
?
0
:
retVal
;
}
@Override
...
...
server/src/main/resources/static/css/rules.css
浏览文件 @
f3d6bdc7
...
...
@@ -36,8 +36,9 @@
margin
:
0
10px
0
10px
;
}
.delete_rule
{
.delete_rule
,
.add_tier
{
border-style
:
none
;
color
:
#555
;
background-color
:
#eee
;
cursor
:
pointer
;
}
\ No newline at end of file
server/src/main/resources/static/js/rules-0.0.1.js
浏览文件 @
f3d6bdc7
...
...
@@ -19,6 +19,7 @@ function makeRuleDiv(rule) {
}
else
{
retVal
+=
makeRuleComponents
(
rule
.
type
)
+
makeRuleBody
(
rule
);
}
retVal
+=
"
</div>
"
;
return
retVal
;
}
...
...
@@ -56,15 +57,15 @@ function makeRuleBody(rule) {
case
"
loadByPeriod
"
:
retVal
+=
makeLoadByPeriod
(
rule
);
break
;
case
"
loadForever
"
:
retVal
+=
makeLoadForever
(
rule
);
break
;
case
"
dropByInterval
"
:
retVal
+=
makeDropByInterval
(
rule
);
break
;
case
"
dropByPeriod
"
:
retVal
+=
makeDropByPeriod
(
rule
);
break
;
case
"
loadForever
"
:
retVal
+=
makeLoadForever
(
rule
);
break
;
case
"
dropForever
"
:
retVal
+=
""
;
break
;
...
...
@@ -80,42 +81,67 @@ function makeRuleBody(rule) {
}
function
makeLoadByInterval
(
rule
)
{
return
"
<span class='rule_label'>interval</span><input type='text' class='long_text' name='interval'
"
+
"
value='
"
+
rule
.
interval
+
"
'/>
"
+
"
<span class='rule_label'>replicants</span><input type='text' class='short_text' name='replicants'
"
+
"
value='
"
+
rule
.
replicants
+
"
'/>
"
+
makeTiersDropdown
(
rule
)
;
var
retVal
=
""
;
retVal
+=
"
<span class='rule_label'>interval</span><input type='text' class='long_text' name='interval'
"
+
"
value='
"
+
rule
.
interval
+
"
'/>
"
;
retVal
+=
"
<button type='button' class='add_tier'>Add Another Tier</button>
"
;
if
(
rule
.
tieredReplicants
===
undefined
)
{
retVal
+=
makeTierLoad
(
null
,
0
);
}
for
(
var
tier
in
rule
.
tieredReplicants
)
{
retVal
+=
makeTierLoad
(
tier
,
rule
.
tieredReplicants
[
tier
]);
}
return
retVal
;
}
function
makeLoadByPeriod
(
rule
)
{
return
"
<span class='rule_label'>period</span><input type='text' name='period'
"
+
"
value='
"
+
rule
.
period
+
"
'/>
"
+
"
<span class='rule_label'>replicants</span><input type='text' class='short_text' name='replicants'
"
+
"
value='
"
+
rule
.
replicants
+
"
'/>
"
+
makeTiersDropdown
(
rule
)
;
var
retVal
=
""
;
retVal
+=
"
<span class='rule_label'>period</span><input type='text' name='period'
"
+
"
value='
"
+
rule
.
period
+
"
'/>
"
;
retVal
+=
"
<button type='button' class='add_tier'>Add Another Tier</button>
"
;
if
(
rule
.
tieredReplicants
===
undefined
)
{
retVal
+=
makeTierLoad
(
null
,
0
);
}
for
(
var
tier
in
rule
.
tieredReplicants
)
{
retVal
+=
makeTierLoad
(
tier
,
rule
.
tieredReplicants
[
tier
]);
}
return
retVal
;
}
function
makeDropByInterval
(
rule
)
{
return
"
<span class='rule_label'>interval</span><input type='text' name='interval'
"
+
"
value='
"
+
rule
.
interval
+
"
'/>
"
;
function
makeLoadForever
(
rule
)
{
var
retVal
=
""
;
retVal
+=
"
<button type='button' class='add_tier'>Add Another Tier</button>
"
;
if
(
rule
.
tieredReplicants
===
undefined
)
{
retVal
+=
makeTierLoad
(
null
,
0
);
}
for
(
var
tier
in
rule
.
tieredReplicants
)
{
retVal
+=
makeTierLoad
(
tier
,
rule
.
tieredReplicants
[
tier
]);
}
return
retVal
;
}
function
makeDropByPeriod
(
rule
)
{
return
"
<span class='rule_label'>period</span><input type='text' name='period'
"
+
"
value='
"
+
rule
.
period
+
"
'/>
"
;
function
makeTierLoad
(
tier
,
val
)
{
return
"
<div class='rule_tier'>
"
+
"
<span class='rule_label'>replicants</span><input type='text' class='short_text' name='replicants'
"
+
"
value='
"
+
val
+
"
'/>
"
+
makeTiersDropdown
(
tier
)
+
"
</div>
"
;
}
function
makeLoadForever
(
rule
)
{
return
"
<span class='rule_label'>replicants</span><input type='text' class='short_text' name='replicants'
"
+
"
value='
"
+
rule
.
replicants
+
"
'/>
"
+
makeTiersDropdown
(
rule
)
;
function
makeDropByInterval
(
rule
)
{
return
"
<span class='rule_label'>interval</span><input type='text' name='interval'
"
+
"
value='
"
+
rule
.
interval
+
"
'/>
"
;
}
function
makeDropByPeriod
(
rule
)
{
return
"
<span class='rule_label'>period</span><input type='text' name='period'
"
+
"
value='
"
+
rule
.
period
+
"
'/>
"
;
}
function
makeJSON
()
{
return
"
<span class='rule_label'>JSON</span><input type='text' class='very_long_text' name='JSON'/>
"
;
}
function
makeTiersDropdown
(
rule
)
{
function
makeTiersDropdown
(
selTier
)
{
var
retVal
=
"
<span class='rule_label'>tier</span><select class='tiers' name='tier'>
"
$
.
each
(
tiers
,
function
(
index
,
tier
)
{
if
(
rule
.
t
ier
===
tier
)
{
if
(
selT
ier
===
tier
)
{
retVal
+=
"
<option selected='selected' value='
"
+
tier
+
"
'>
"
+
tier
+
"
</option>
"
;
}
else
{
retVal
+=
"
<option value='
"
+
tier
+
"
'>
"
+
tier
+
"
</option>
"
;
...
...
@@ -142,7 +168,7 @@ function getRules() {
function
domToRule
(
domRule
)
{
var
ruleType
=
$
(
$
(
domRule
).
find
(
"
.rule_dropdown_types:first
"
)).
val
();
var
inputs
=
$
(
$
(
domRule
).
find
(
"
.rule_body:first
"
)).
children
(
"
:not(span)
"
);
var
inputs
=
$
(
$
(
domRule
).
find
(
"
.rule_body:first
"
)).
children
(
"
input
"
);
// Special case for free form JSON
if
(
ruleType
===
"
JSON
"
)
{
...
...
@@ -155,6 +181,17 @@ function domToRule(domRule) {
var
name
=
$
(
input
).
attr
(
"
name
"
);
rule
[
name
]
=
$
(
input
).
val
();
});
var
theTiers
=
$
(
$
(
domRule
).
find
(
"
.rule_body:first
"
)).
children
(
"
.rule_tier
"
);
var
tieredReplicants
=
{};
$
.
each
(
theTiers
,
function
(
index
,
theTier
)
{
var
tierName
=
$
(
theTier
).
find
(
"
select
"
).
val
();
var
replicants
=
$
(
theTier
).
find
(
"
[name=replicants]
"
).
val
();
tieredReplicants
[
tierName
]
=
replicants
;
});
rule
.
tieredReplicants
=
tieredReplicants
;
return
rule
;
}
...
...
@@ -251,6 +288,10 @@ $(document).ready(function() {
$
(
event
.
target
).
parent
(
"
.rule
"
).
remove
();
});
$
(
"
.add_tier
"
).
live
(
"
click
"
,
function
(
event
)
{
$
(
event
.
target
).
parent
().
append
(
makeTierLoad
(
null
,
0
));
});
$
(
"
#create_new_rule
"
).
click
(
function
(
event
)
{
$
(
'
#rules_list
'
).
prepend
(
makeRuleDiv
());
});
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录