rsence-pre 2.1.0.7.pre → 2.1.0.8.pre
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/js/comm/comm.js +27 -5
- data/js/controls/dialogs/sheet/sheet.js +14 -14
- data/js/controls/imageview/imageview.js +13 -13
- data/js/controls/progress/progressindicator/progressindicator.js +5 -5
- data/js/controls/sliders/slider/slider.js +4 -31
- data/js/controls/textcontrol/textcontrol.js +0 -50
- data/js/controls/textcontrol/themes/default/textcontrol.html +1 -1
- data/js/controls/window/window.js +2 -2
- data/js/core/elem/elem.js +134 -160
- data/js/foundation/eventmanager/eventmanager.js +36 -18
- data/js/foundation/view/morphanimation/morphanimation.js +53 -43
- data/js/foundation/view/view.js +78 -91
- data/js/lists/propertylist/propertylist.js +12 -5
- data/js/lists/propertylist/propertylisteditor/propertylisteditor.js +4 -4
- data/js/menus/minimenu/minimenu.js +36 -13
- data/js/menus/minimenu/minimenuitem/minimenuitem.js +1 -1
- data/js/menus/minimenu/minimenuitem/themes/default/minimenuitem.css +1 -1
- data/lib/conf/argv.rb +23 -2
- data/lib/daemon/daemon.rb +4 -4
- data/lib/plugins/pluginmanager.rb +2 -1
- metadata +4 -4
data/js/foundation/view/view.js
CHANGED
@@ -552,7 +552,7 @@ HView = HClass.extend({
|
|
552
552
|
* ++
|
553
553
|
**/
|
554
554
|
_setCSS: function(_additional){
|
555
|
-
var _cssStyle = '
|
555
|
+
var _cssStyle = 'overflow:hidden;visibility:hidden;';
|
556
556
|
if(this.isAbsolute){
|
557
557
|
_cssStyle += 'position:absolute;';
|
558
558
|
} else {
|
@@ -568,20 +568,18 @@ HView = HClass.extend({
|
|
568
568
|
* ++
|
569
569
|
**/
|
570
570
|
_getParentElemId: function(){
|
571
|
-
var
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
_parentElemId = this.parent.markupElemIds['subview'];
|
571
|
+
var _parent = this.parent;
|
572
|
+
return ((_parent.elemId === undefined)?0:((_parent._getSubviewId===undefined)?0:_parent._getSubviewId()));
|
573
|
+
},
|
574
|
+
|
575
|
+
_getSubviewId: function(){
|
576
|
+
if(this.markupElemIds&&this.markupElemIds.subview!==undefined){
|
577
|
+
return this.markupElemIds.subview;
|
579
578
|
}
|
580
|
-
|
581
|
-
|
582
|
-
_parentElemId = this.parent.elemId;
|
579
|
+
else if(this.elemId !== undefined) {
|
580
|
+
return this.elemId;
|
583
581
|
}
|
584
|
-
return
|
582
|
+
return 0;
|
585
583
|
},
|
586
584
|
|
587
585
|
/** --
|
@@ -616,30 +614,52 @@ HView = HClass.extend({
|
|
616
614
|
*
|
617
615
|
**/
|
618
616
|
drawRect: function() {
|
617
|
+
if(!this.rect.isValid){
|
618
|
+
console.log('invalid rect:',ELEM.get(this.elemId));
|
619
|
+
}
|
620
|
+
if(!this.parent){
|
621
|
+
console.log('no parent:',ELEM.get(this.elemId));
|
622
|
+
}
|
619
623
|
if (this.parent && this.rect.isValid) {
|
620
|
-
var
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
624
|
+
var
|
625
|
+
i = 0,
|
626
|
+
_this = this,
|
627
|
+
_elemId = _this.elemId,
|
628
|
+
_styl = ELEM.setStyle,
|
629
|
+
_rect = _this.rect,
|
630
|
+
_auto = 'auto',
|
631
|
+
_left = _this.flexLeft?_rect.left:_auto,
|
632
|
+
_top = _this.flexTop?_rect.top:_auto,
|
633
|
+
_right = _this.flexRight?_this.flexRightOffset:_auto,
|
634
|
+
_bottom = _this.flexBottom?_this.flexBottomOffset:_auto,
|
635
|
+
_width = (_this.flexLeft&&_this.flexRight)?_auto:_rect.width,
|
636
|
+
_height = (_this.flexTop&&_this.flexBottom)?_auto:_rect.height,
|
637
|
+
_styles = [
|
638
|
+
[ 'left', _left ],
|
639
|
+
[ 'top', _top ],
|
640
|
+
[ 'right', _right ],
|
641
|
+
[ 'bottom', _bottom ],
|
642
|
+
[ 'width', _width ],
|
643
|
+
[ 'height', _height ],
|
644
|
+
[ 'display', _this.displayMode ]
|
645
|
+
],
|
646
|
+
_key, _value;
|
632
647
|
// Show the rectangle once it gets created, unless visibility was set to
|
633
648
|
// hidden in the constructor.
|
634
|
-
if(_this.isHidden
|
635
|
-
|
649
|
+
if(!_this.isHidden) {
|
650
|
+
_styles.push( [ 'visibility', 'inherit' ] );
|
651
|
+
}
|
652
|
+
for(;i<_styles.length;i++){
|
653
|
+
_key = _styles[i][0];
|
654
|
+
_value = _styles[i][1];
|
655
|
+
if( i < 6 && _value !== _auto ){
|
656
|
+
_value += 'px';
|
657
|
+
}
|
658
|
+
_styl(_elemId,_key,_value,true);
|
636
659
|
}
|
637
|
-
|
638
|
-
_styl( _elemId, 'display', _this.displayMode, true);
|
639
|
-
|
640
660
|
_this._updateZIndex();
|
641
|
-
|
642
|
-
if (_this._cachedLeft !== _rect.left || _this._cachedTop !== _rect.top) {
|
661
|
+
|
662
|
+
if ( _this._cachedLeft !== _rect.left || _this._cachedTop !== _rect.top) {
|
643
663
|
_this.invalidatePositionCache();
|
644
664
|
_this._cachedLeft = _rect.left;
|
645
665
|
_this._cachedTop = _rect.top;
|
@@ -688,15 +708,7 @@ HView = HClass.extend({
|
|
688
708
|
}
|
689
709
|
this.drawSubviews();
|
690
710
|
if(this.options.style){
|
691
|
-
|
692
|
-
_style = this.options.style,
|
693
|
-
_styleItem, _styleKey, _styleValue, i = 0;
|
694
|
-
for(;i<_style.length;i++){
|
695
|
-
_styleItem = _style[i];
|
696
|
-
_styleKey = _styleItem[0];
|
697
|
-
_styleValue = _styleItem[1];
|
698
|
-
this.setStyle(_styleKey,_styleValue);
|
699
|
-
}
|
711
|
+
this.setStyles( this.options.style );
|
700
712
|
}
|
701
713
|
if(this.options.html){
|
702
714
|
this.setHTML(this.options.html);
|
@@ -866,17 +878,6 @@ HView = HClass.extend({
|
|
866
878
|
return [ 0, 0, _parentSize[0], _parentSize[1] ];
|
867
879
|
},
|
868
880
|
|
869
|
-
parentSize: function(){
|
870
|
-
var _parentElemId = this.parent.elemId;
|
871
|
-
if ( _parentElemId === 0 ) {
|
872
|
-
return ELEM.windowSize();
|
873
|
-
}
|
874
|
-
else {
|
875
|
-
ELEM.flushLoop();
|
876
|
-
return ELEM.getSize( _parentElemId );
|
877
|
-
}
|
878
|
-
},
|
879
|
-
|
880
881
|
minWidth: 0,
|
881
882
|
setMinWidth: function(_minWidth){
|
882
883
|
this.minWidth = _minWidth;
|
@@ -1007,7 +1008,19 @@ HView = HClass.extend({
|
|
1007
1008
|
}
|
1008
1009
|
return this;
|
1009
1010
|
},
|
1010
|
-
|
1011
|
+
|
1012
|
+
setStyles: function(_styles){
|
1013
|
+
var
|
1014
|
+
_styleItem, _styleKey, _styleValue, i = 0;
|
1015
|
+
for(;i<_styles.length;i++){
|
1016
|
+
_styleItem = _styles[i];
|
1017
|
+
_styleKey = _styleItem[0];
|
1018
|
+
_styleValue = _styleItem[1];
|
1019
|
+
this.setStyle(_styleKey,_styleValue);
|
1020
|
+
}
|
1021
|
+
return this;
|
1022
|
+
},
|
1023
|
+
|
1011
1024
|
/** = Description
|
1012
1025
|
* Returns a style of the main DOM element of the component.
|
1013
1026
|
* Utilizes +ELEM+ cache to perform the action.
|
@@ -1043,7 +1056,7 @@ HView = HClass.extend({
|
|
1043
1056
|
if (!this['markupElemIds']){
|
1044
1057
|
console.log('Warning, setStyleOfPart: no markupElemIds');
|
1045
1058
|
}
|
1046
|
-
else if (
|
1059
|
+
else if (this.markupElemIds[_partName]===undefined) {
|
1047
1060
|
console.log('Warning, setStyleOfPart: partName "'+_partName+'" does not exist for viewId '+this.viewId+'.');
|
1048
1061
|
}
|
1049
1062
|
else {
|
@@ -1065,7 +1078,7 @@ HView = HClass.extend({
|
|
1065
1078
|
*
|
1066
1079
|
**/
|
1067
1080
|
styleOfPart: function(_partName, _name) {
|
1068
|
-
if (
|
1081
|
+
if (this.markupElemIds[_partName]===undefined) {
|
1069
1082
|
console.log('Warning, styleOfPart: partName "'+_partName+'" does not exist for viewId '+this.viewId+'.');
|
1070
1083
|
return '';
|
1071
1084
|
}
|
@@ -1085,7 +1098,7 @@ HView = HClass.extend({
|
|
1085
1098
|
*
|
1086
1099
|
**/
|
1087
1100
|
setMarkupOfPart: function( _partName, _value ) {
|
1088
|
-
if (
|
1101
|
+
if (this.markupElemIds[_partName]===undefined) {
|
1089
1102
|
console.log('Warning, setMarkupOfPart: partName "'+_partName+'" does not exist for viewId '+this.viewId+'.');
|
1090
1103
|
}
|
1091
1104
|
else {
|
@@ -1106,7 +1119,7 @@ HView = HClass.extend({
|
|
1106
1119
|
*
|
1107
1120
|
**/
|
1108
1121
|
markupOfPart: function(_partName) {
|
1109
|
-
if (
|
1122
|
+
if (this.markupElemIds[_partName]===undefined) {
|
1110
1123
|
console.log('Warning, markupOfPart: partName "'+_partName+'" does not exist for viewId '+this.viewId+'.');
|
1111
1124
|
return '';
|
1112
1125
|
}
|
@@ -1628,7 +1641,7 @@ HView = HClass.extend({
|
|
1628
1641
|
ELEM.setCSS(_stringElem, "visibility:hidden;"+_extraCss);
|
1629
1642
|
ELEM.setHTML(_stringElem, _string);
|
1630
1643
|
// ELEM.flushLoop();
|
1631
|
-
var _visibleSize=ELEM.
|
1644
|
+
var _visibleSize=ELEM.getSize(_stringElem);
|
1632
1645
|
// console.log('visibleSize',_visibleSize);
|
1633
1646
|
ELEM.del(_stringElem);
|
1634
1647
|
return [_visibleSize[0]+_visibleSize[0]%2,_visibleSize[1]+_visibleSize[1]%2];
|
@@ -1649,20 +1662,13 @@ HView = HClass.extend({
|
|
1649
1662
|
/** Returns the X coordinate that has the scrolled position calculated.
|
1650
1663
|
**/
|
1651
1664
|
pageX: function() {
|
1652
|
-
|
1653
|
-
|
1654
|
-
|
1655
|
-
|
1656
|
-
|
1657
|
-
|
1658
|
-
|
1659
|
-
if(_elem.markupElemIds&&_elem.markupElemIds.subview){
|
1660
|
-
_x += ELEM.get(_elem.markupElemIds.subview).offsetLeft;
|
1661
|
-
_x -= ELEM.get(_elem.markupElemIds.subview).scrollLeft;
|
1662
|
-
}
|
1663
|
-
_elem = _elem.parent;
|
1664
|
-
}
|
1665
|
-
return _x;
|
1665
|
+
return ELEM._getVisibleLeftPosition( this.elemId );
|
1666
|
+
},
|
1667
|
+
|
1668
|
+
/** Returns the Y coordinate that has the scrolled position calculated.
|
1669
|
+
**/
|
1670
|
+
pageY: function() {
|
1671
|
+
return ELEM._getVisibleTopPosition( this.elemId );
|
1666
1672
|
},
|
1667
1673
|
|
1668
1674
|
/** = Description
|
@@ -1712,25 +1718,6 @@ HView = HClass.extend({
|
|
1712
1718
|
return this;
|
1713
1719
|
},
|
1714
1720
|
|
1715
|
-
/** Returns the Y coordinate that has the scrolled position calculated.
|
1716
|
-
**/
|
1717
|
-
pageY: function() {
|
1718
|
-
var _y = 0,
|
1719
|
-
_elem = this;
|
1720
|
-
while(_elem) {
|
1721
|
-
if(_elem.elemId && _elem.rect) {
|
1722
|
-
_y += ELEM.get(_elem.elemId).offsetTop;
|
1723
|
-
_y -= ELEM.get(_elem.elemId).scrollTop;
|
1724
|
-
}
|
1725
|
-
if(_elem.markupElemIds&&_elem.markupElemIds.subview){
|
1726
|
-
_y += ELEM.get(_elem.markupElemIds.subview).offsetTop;
|
1727
|
-
_y -= ELEM.get(_elem.markupElemIds.subview).scrollTop;
|
1728
|
-
}
|
1729
|
-
_elem = _elem.parent;
|
1730
|
-
}
|
1731
|
-
return _y;
|
1732
|
-
},
|
1733
|
-
|
1734
1721
|
/** Returns the HPoint that has the scrolled position calculated.
|
1735
1722
|
**/
|
1736
1723
|
pageLocation: function() {
|
@@ -21,13 +21,13 @@ HPropertyList = HControl.extend({
|
|
21
21
|
click: true
|
22
22
|
},
|
23
23
|
|
24
|
-
controlDefaults:
|
24
|
+
controlDefaults: HControlDefaults.extend({
|
25
25
|
keyColumnWidth: 100,
|
26
26
|
hideTypeColumn: false,
|
27
27
|
useEditor: false,
|
28
28
|
rowHeight: 15,
|
29
29
|
keyIndent: 8
|
30
|
-
})
|
30
|
+
}),
|
31
31
|
|
32
32
|
click: function(x,y){
|
33
33
|
if(this.options.useEditor){
|
@@ -91,10 +91,17 @@ HPropertyList = HControl.extend({
|
|
91
91
|
this.separatortParentElemId = separatorParentElemId;
|
92
92
|
|
93
93
|
this.propertyItems = [];
|
94
|
-
|
95
94
|
// Editor initialization
|
96
95
|
if(this.options.useEditor){
|
97
|
-
this.editorValue = HValue.nu(
|
96
|
+
this.editorValue = HValue.nu(
|
97
|
+
false, {
|
98
|
+
top: 0,
|
99
|
+
left: 0,
|
100
|
+
type: 'h',
|
101
|
+
name: '--',
|
102
|
+
value: {}
|
103
|
+
}
|
104
|
+
);
|
98
105
|
this.editor = HPropertyListEditor.nu(
|
99
106
|
[0,0,null,this.options.rowHeight+2,0,null],
|
100
107
|
this.contentView, {
|
@@ -495,7 +502,7 @@ HPropertyList = HControl.extend({
|
|
495
502
|
}
|
496
503
|
|
497
504
|
this.selectedItem = itemNum;
|
498
|
-
this.editorValue.set(this.valueTokens[itemNum]);
|
505
|
+
this.editorValue.set( COMM.Values.clone(this.valueTokens[itemNum]) );
|
499
506
|
this.editor.show();
|
500
507
|
EVENT.changeActiveControl(this.editor);
|
501
508
|
this.editor.offsetTo( 0, targetY );
|
@@ -59,7 +59,9 @@ HPropertyListEditor = HControl.extend({
|
|
59
59
|
|
60
60
|
lostActiveStatus: function(newActive){
|
61
61
|
this.base();
|
62
|
-
if(newActive &&
|
62
|
+
if( newActive &&
|
63
|
+
( (newActive === this) || (newActive.parents.indexOf(this) !== -1) )
|
64
|
+
){
|
63
65
|
return;
|
64
66
|
}
|
65
67
|
this.hide();
|
@@ -111,12 +113,11 @@ HPropertyListEditor = HControl.extend({
|
|
111
113
|
var
|
112
114
|
parent = this.parent.parent,
|
113
115
|
opts = parent.options;
|
114
|
-
|
115
116
|
this.nameEditor = HTextControl.extend({
|
116
117
|
boldTypes: ['a','h'],
|
117
118
|
lostActiveStatus: function(newActive){
|
118
|
-
this.parent.lostActiveStatus(newActive);
|
119
119
|
this.base();
|
120
|
+
this.parent.lostActiveStatus(newActive);
|
120
121
|
},
|
121
122
|
refreshValue: function(){
|
122
123
|
if(this.drawn){
|
@@ -141,7 +142,6 @@ HPropertyListEditor = HControl.extend({
|
|
141
142
|
|
142
143
|
var
|
143
144
|
height = this.nameEditor.rect.height;
|
144
|
-
|
145
145
|
if(!opts.hideTypeColumn){
|
146
146
|
this.typeEditor = HMiniMenu.extend({
|
147
147
|
lostActiveStatus: function(newActive){
|
@@ -17,8 +17,7 @@ HMiniMenu = HRadioButtonList.extend({
|
|
17
17
|
componentName: 'minimenu',
|
18
18
|
|
19
19
|
defaultEvents: {
|
20
|
-
|
21
|
-
mouseUp: true,
|
20
|
+
draggable: true,
|
22
21
|
click: true
|
23
22
|
},
|
24
23
|
|
@@ -52,7 +51,7 @@ HMiniMenu = HRadioButtonList.extend({
|
|
52
51
|
},
|
53
52
|
|
54
53
|
click: function(){
|
55
|
-
this.
|
54
|
+
this.menuShow();
|
56
55
|
},
|
57
56
|
|
58
57
|
refreshValue: function(){
|
@@ -60,22 +59,40 @@ HMiniMenu = HRadioButtonList.extend({
|
|
60
59
|
for(var i=0;i<this.listItems.length;i++){
|
61
60
|
if(this.listItems[i][0]===this.value){
|
62
61
|
this.setLabel( this.listItems[i][1] );
|
63
|
-
|
62
|
+
return;
|
64
63
|
}
|
65
64
|
}
|
66
65
|
},
|
67
66
|
|
68
|
-
|
67
|
+
menuShow: function(){
|
69
68
|
this.repositionMenuItems();
|
70
69
|
this.menuItemView.bringToFront();
|
71
70
|
this.menuItemView.show();
|
72
71
|
return true;
|
73
72
|
},
|
74
73
|
|
74
|
+
menuHide: function(){
|
75
|
+
this.menuItemView.sendToBack();
|
76
|
+
this.menuItemView.hide();
|
77
|
+
},
|
78
|
+
|
79
|
+
startDrag: function(x,y){
|
80
|
+
this.dragStart = [x,y];
|
81
|
+
this.menuShow();
|
82
|
+
},
|
83
|
+
|
75
84
|
lostActiveStatus: function(newActive){
|
76
|
-
this.
|
77
|
-
|
78
|
-
|
85
|
+
this.menuHide();
|
86
|
+
},
|
87
|
+
|
88
|
+
endDrag: function(x,y){
|
89
|
+
if( (Math.round(this.dragStart[0]*0.2)===Math.round(x*0.2)) &&
|
90
|
+
(Math.round(this.dragStart[1]*0.2)===Math.round(y*0.2))
|
91
|
+
){
|
92
|
+
this.menuShow();
|
93
|
+
}
|
94
|
+
else {
|
95
|
+
this.menuHide();
|
79
96
|
}
|
80
97
|
},
|
81
98
|
|
@@ -85,15 +102,21 @@ HMiniMenu = HRadioButtonList.extend({
|
|
85
102
|
},
|
86
103
|
|
87
104
|
drawSubviews: function(){
|
105
|
+
this.markupElemIds.subview = 0;
|
88
106
|
this.menuItemView = HView.extend({
|
89
|
-
|
90
|
-
this.setStyle(
|
91
|
-
this.setStyle( 'border', '1px solid #999' );
|
107
|
+
bringToFront: function(){
|
108
|
+
this.setStyle('z-index',this.app.views.length);
|
92
109
|
}
|
93
110
|
}).nu(
|
94
111
|
[ this.rect.left, this.rect.top, this.rect.width, 500 ],
|
95
|
-
this
|
96
|
-
visible: false
|
112
|
+
this, {
|
113
|
+
visible: false,
|
114
|
+
style: [
|
115
|
+
['background-color','#f6f6f6'],
|
116
|
+
['border', '1px solid #999'],
|
117
|
+
['overflow-y', 'auto'],
|
118
|
+
['opacity', 0.9]
|
119
|
+
]
|
97
120
|
}
|
98
121
|
);
|
99
122
|
},
|
data/lib/conf/argv.rb
CHANGED
@@ -19,6 +19,25 @@ module RSence
|
|
19
19
|
return (not ['i386-mingw32','x86-mingw32'].include?(RUBY_PLATFORM))
|
20
20
|
end
|
21
21
|
|
22
|
+
# @private Returns true, if platform is linux
|
23
|
+
def self.linux?
|
24
|
+
return RUBY_PLATFORM.end_with?('-linux')
|
25
|
+
end
|
26
|
+
|
27
|
+
# @private Returns true, if platform is Mac OS X
|
28
|
+
def self.darwin?
|
29
|
+
return RUBY_PLATFORM.include?('-darwin')
|
30
|
+
end
|
31
|
+
|
32
|
+
# @private Returns signal name that resembles INFO or PWR (extra signal to poll for server status)
|
33
|
+
def self.info_signal_name
|
34
|
+
if self.linux?
|
35
|
+
return 'PWR'
|
36
|
+
else
|
37
|
+
return 'INFO'
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
22
41
|
# @private ARGVParser is the "user interface" as a command-line argument parser.
|
23
42
|
# It parses the command-line arguments and sets up things accordingly.
|
24
43
|
class ARGVParser
|
@@ -327,7 +346,8 @@ module RSence
|
|
327
346
|
end
|
328
347
|
end
|
329
348
|
|
330
|
-
# Main argument parser for the status command, sends the INFO
|
349
|
+
# Main argument parser for the status command, sends the INFO (or PWR on linux) POSIX signal to
|
350
|
+
# the process, if running.
|
331
351
|
# Checks if the process responds on the port and address it's configured for.
|
332
352
|
def parse_status_argv
|
333
353
|
init_args
|
@@ -406,8 +426,9 @@ module RSence
|
|
406
426
|
pid_fn = config[:daemon][:pid_fn]
|
407
427
|
if File.exists?( pid_fn )
|
408
428
|
pid = File.read( pid_fn ).to_i
|
429
|
+
sig_name = RSence.info_signal_name
|
409
430
|
pid_status = RSence::SIGComm.wait_signal_response(
|
410
|
-
pid, pid_fn,
|
431
|
+
pid, pid_fn, sig_name, 3
|
411
432
|
)
|
412
433
|
else
|
413
434
|
warn @@strs[:messages][:no_pid_file] if @args[:verbose]
|
data/lib/daemon/daemon.rb
CHANGED
@@ -47,7 +47,7 @@ module RSence
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def self.responds?( daemon )
|
50
|
-
wait_signal_response( daemon,
|
50
|
+
wait_signal_response( daemon, RSence.info_signal_name )
|
51
51
|
end
|
52
52
|
|
53
53
|
# Reads the pid file and calls the process.
|
@@ -123,9 +123,9 @@ module RSence
|
|
123
123
|
daemon.alrm
|
124
124
|
write_signal_response( daemon, 'ALRM' )
|
125
125
|
end
|
126
|
-
Signal.trap(
|
126
|
+
Signal.trap( RSence.info_signal_name ) do
|
127
127
|
daemon.info
|
128
|
-
write_signal_response( daemon,
|
128
|
+
write_signal_response( daemon, RSence.info_signal_name )
|
129
129
|
end
|
130
130
|
['INT', 'TERM', 'KILL'].each do | signal |
|
131
131
|
Signal.trap( signal ) do
|
@@ -355,7 +355,7 @@ module RSence
|
|
355
355
|
# save
|
356
356
|
# end
|
357
357
|
|
358
|
-
# Called on INFO signals ("Alive?")
|
358
|
+
# Called on INFO (PWR) signals ("Alive?")
|
359
359
|
def info
|
360
360
|
puts "#{Time.now.strftime('%Y-%m-%d %H:%M:%S')} -- RSence version #{RSence.version} is running."
|
361
361
|
end
|
@@ -253,9 +253,10 @@ module RSence
|
|
253
253
|
end
|
254
254
|
if is_dir
|
255
255
|
Dir.entries( bundle_path ).each do |entry_name|
|
256
|
-
next if entry_name[0].chr == '.'
|
256
|
+
next if entry_name[0].chr == '.' # skip hidden, '.' and '..'
|
257
257
|
full_path = File.join( bundle_path, entry_name )
|
258
258
|
unless File.directory?( full_path )
|
259
|
+
next if entry_name == 'plugins' # skip sub-plugins
|
259
260
|
has_dot = entry_name.include?('.')
|
260
261
|
next unless has_dot
|
261
262
|
is_src_file = ['yaml','rb'].include?( entry_name.split('.')[-1] )
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rsence-pre
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 961916100
|
5
5
|
prerelease: true
|
6
6
|
segments:
|
7
7
|
- 2
|
8
8
|
- 1
|
9
9
|
- 0
|
10
|
-
-
|
10
|
+
- 8
|
11
11
|
- pre
|
12
|
-
version: 2.1.0.
|
12
|
+
version: 2.1.0.8.pre
|
13
13
|
platform: ruby
|
14
14
|
authors:
|
15
15
|
- Riassence Inc.
|
@@ -17,7 +17,7 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date: 2010-09-
|
20
|
+
date: 2010-09-12 00:00:00 +03:00
|
21
21
|
default_executable: rsence-pre
|
22
22
|
dependencies:
|
23
23
|
- !ruby/object:Gem::Dependency
|