xpcomcore-rubygem 0.6.3 → 0.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitmodules +1 -1
- data/VERSION +1 -1
- data/xpcomcore-rubygem.gemspec +5 -4
- data/xpcomcore/build_properties.yml +1 -1
- data/xpcomcore/components/XPCOMCore.js +1 -1
- data/xpcomcore/doc/files.html +1 -1
- data/xpcomcore/doc/index.html +1 -1
- data/xpcomcore/doc/symbols/_global_.html +1 -1
- data/xpcomcore/doc/symbols/error.html +1 -1
- data/xpcomcore/doc/symbols/file.html +1 -1
- data/xpcomcore/doc/symbols/file.nosuchfileerror.html +1 -1
- data/xpcomcore/doc/symbols/kernel.html +1 -1
- data/xpcomcore/doc/symbols/loaderror.html +1 -1
- data/xpcomcore/doc/symbols/selfconcepterror.html +1 -1
- data/xpcomcore/doc/symbols/src/lib_sys.js.html +59 -41
- data/xpcomcore/doc/symbols/sys.html +47 -1
- data/xpcomcore/doc/symbols/xpcbuiltins.html +1 -1
- data/xpcomcore/lib/sys.js +18 -0
- data/xpcomcore/test/file_test.js +10 -9
- data/xpcomcore/test/kernel_test.js +11 -9
- data/xpcomcore/test/stdlib/rubygems_test.js +3 -1
- data/xpcomcore/test/sys_test.js +2 -2
- data/xpcomcore/test/test_helper.js +2 -2
- data/xpcomcore/test/xpc_builtins_test.js +2 -2
- metadata +2 -2
data/.gitmodules
CHANGED
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.6.
|
|
1
|
+
0.6.4
|
data/xpcomcore-rubygem.gemspec
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
# Generated by jeweler
|
|
2
|
-
# DO NOT EDIT THIS FILE
|
|
3
|
-
# Instead, edit Jeweler::Tasks in Rakefile, and run
|
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
|
|
4
4
|
# -*- encoding: utf-8 -*-
|
|
5
5
|
|
|
6
6
|
Gem::Specification.new do |s|
|
|
7
7
|
s.name = %q{xpcomcore-rubygem}
|
|
8
|
-
s.version = "0.6.
|
|
8
|
+
s.version = "0.6.4"
|
|
9
9
|
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
11
11
|
s.authors = ["ggironda"]
|
|
12
|
-
s.date = %q{2009-10-
|
|
12
|
+
s.date = %q{2009-10-24}
|
|
13
13
|
s.description = %q{Gem to allow for using XPCOMCore via RubyGems}
|
|
14
14
|
s.email = %q{gabriel.gironda@gmail.com}
|
|
15
15
|
s.executables = ["xpcomcore", "xpcomcore-gem"]
|
|
@@ -150,3 +150,4 @@ Gem::Specification.new do |s|
|
|
|
150
150
|
s.add_dependency(%q<colored>, [">= 0"])
|
|
151
151
|
end
|
|
152
152
|
end
|
|
153
|
+
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
|
|
2
|
-
var XPCOMCoreVersion = '0.5.
|
|
2
|
+
var XPCOMCoreVersion = '0.5.4'; // DO NOT REMOVE THIS COMMENT OR MOVE THIS LINE. THIS LINE IS AUTO-GENERATED FROM A RAKE TASK. @XPCOMCORE_VERSION@
|
|
3
3
|
const $Cc = Components.classes;
|
|
4
4
|
const $Ci = Components.interfaces;
|
|
5
5
|
|
data/xpcomcore/doc/files.html
CHANGED
|
@@ -281,7 +281,7 @@ This file defines the implementation of our XPCBuiltins namespace.
|
|
|
281
281
|
</div>
|
|
282
282
|
<div class="fineprint" style="clear:both">
|
|
283
283
|
|
|
284
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blankt">JsDoc Toolkit</a> 2.3.2 on
|
|
284
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blankt">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
285
285
|
</div>
|
|
286
286
|
</body>
|
|
287
287
|
</html>
|
data/xpcomcore/doc/index.html
CHANGED
|
@@ -269,7 +269,7 @@ build the rest of XPCOMCore on top of.
|
|
|
269
269
|
</div>
|
|
270
270
|
<div class="fineprint" style="clear:both">
|
|
271
271
|
|
|
272
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blankt">JsDoc Toolkit</a> 2.3.2 on
|
|
272
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blankt">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
273
273
|
</div>
|
|
274
274
|
</body>
|
|
275
275
|
</html>
|
|
@@ -330,7 +330,7 @@ ul.inheritsList
|
|
|
330
330
|
<!-- ============================== footer ================================= -->
|
|
331
331
|
<div class="fineprint" style="clear:both">
|
|
332
332
|
|
|
333
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
333
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
334
334
|
</div>
|
|
335
335
|
</body>
|
|
336
336
|
</html>
|
|
@@ -259,7 +259,7 @@ ul.inheritsList
|
|
|
259
259
|
<!-- ============================== footer ================================= -->
|
|
260
260
|
<div class="fineprint" style="clear:both">
|
|
261
261
|
|
|
262
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
262
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
263
263
|
</div>
|
|
264
264
|
</body>
|
|
265
265
|
</html>
|
|
@@ -446,7 +446,7 @@ from the specified file
|
|
|
446
446
|
<!-- ============================== footer ================================= -->
|
|
447
447
|
<div class="fineprint" style="clear:both">
|
|
448
448
|
|
|
449
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
449
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
450
450
|
</div>
|
|
451
451
|
</body>
|
|
452
452
|
</html>
|
|
@@ -329,7 +329,7 @@ ul.inheritsList
|
|
|
329
329
|
<!-- ============================== footer ================================= -->
|
|
330
330
|
<div class="fineprint" style="clear:both">
|
|
331
331
|
|
|
332
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
332
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
333
333
|
</div>
|
|
334
334
|
</body>
|
|
335
335
|
</html>
|
|
@@ -1136,7 +1136,7 @@ in <a href="../symbols/kernel.html#$LOAD_PATH">Kernel#$LOAD_PATH</a>.</dd>
|
|
|
1136
1136
|
<!-- ============================== footer ================================= -->
|
|
1137
1137
|
<div class="fineprint" style="clear:both">
|
|
1138
1138
|
|
|
1139
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
1139
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
1140
1140
|
</div>
|
|
1141
1141
|
</body>
|
|
1142
1142
|
</html>
|
|
@@ -329,7 +329,7 @@ ul.inheritsList
|
|
|
329
329
|
<!-- ============================== footer ================================= -->
|
|
330
330
|
<div class="fineprint" style="clear:both">
|
|
331
331
|
|
|
332
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
332
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
333
333
|
</div>
|
|
334
334
|
</body>
|
|
335
335
|
</html>
|
|
@@ -329,7 +329,7 @@ ul.inheritsList
|
|
|
329
329
|
<!-- ============================== footer ================================= -->
|
|
330
330
|
<div class="fineprint" style="clear:both">
|
|
331
331
|
|
|
332
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
332
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
333
333
|
</div>
|
|
334
334
|
</body>
|
|
335
335
|
</html>
|
|
@@ -23,44 +23,62 @@
|
|
|
23
23
|
<span class='line'> 16</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">$Cc</span><span class="PUNC">[</span><span class="STRN">"@mozilla.org/file/directory_service;1"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">getService</span><span class="PUNC">(</span><span class="NAME">$Ci.nsIProperties</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">get</span><span class="PUNC">(</span><span class="STRN">"TmpD"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">$Ci.nsIFile</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">path</span><span class="PUNC">;</span><span class="WHIT">
|
|
24
24
|
<span class='line'> 17</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
25
25
|
<span class='line'> 18</span> </span><span class="WHIT">
|
|
26
|
-
<span class='line'> 19</span> </span><span class="COMM">/**
|
|
27
|
-
<span class='line'> 20</span> *
|
|
28
|
-
<span class='line'> 21</span> *
|
|
29
|
-
<span class='line'> 22</span> *
|
|
30
|
-
<span class='line'> 23</span>
|
|
31
|
-
<span class='line'> 24</span>
|
|
32
|
-
<span class='line'> 25</span>
|
|
33
|
-
<span class='line'> 26</span>
|
|
34
|
-
<span class='line'> 27</span> </span><span class="WHIT">
|
|
35
|
-
<span class='line'> 28</span>
|
|
36
|
-
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="KEYW">
|
|
37
|
-
<span class='line'> 30</span> </span><span class="WHIT">
|
|
38
|
-
<span class='line'> 31</span>
|
|
39
|
-
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="
|
|
40
|
-
<span class='line'> 33</span>
|
|
41
|
-
<span class='line'> 34</span> </span><span class="WHIT">
|
|
42
|
-
<span class='line'> 35</span>
|
|
43
|
-
<span class='line'> 36</span>
|
|
44
|
-
<span class='line'> 37</span> </span><span class="WHIT">
|
|
45
|
-
<span class='line'> 38</span>
|
|
46
|
-
<span class='line'> 39</span>
|
|
47
|
-
<span class='line'> 40</span>
|
|
48
|
-
<span class='line'> 41</span>
|
|
49
|
-
<span class='line'> 42</span>
|
|
50
|
-
<span class='line'> 43</span>
|
|
51
|
-
<span class='line'> 44</span>
|
|
52
|
-
<span class='line'> 45</span>
|
|
53
|
-
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="KEYW">
|
|
54
|
-
<span class='line'> 47</span> </span><span class="WHIT">
|
|
55
|
-
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
56
|
-
<span class='line'> 49</span>
|
|
57
|
-
<span class='line'> 50</span>
|
|
58
|
-
<span class='line'> 51</span> </span><span class="WHIT">
|
|
59
|
-
<span class='line'> 52</span>
|
|
60
|
-
<span class='line'> 53</span> </span><span class="WHIT">
|
|
61
|
-
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="PUNC">
|
|
62
|
-
<span class='line'> 55</span>
|
|
63
|
-
<span class='line'> 56</span>
|
|
64
|
-
<span class='line'> 57</span> </span><span class="WHIT">
|
|
65
|
-
<span class='line'> 58</span> </span><span class="PUNC">
|
|
66
|
-
<span class='line'> 59</span> </span
|
|
26
|
+
<span class='line'> 19</span> </span><span class="COMM">/**
|
|
27
|
+
<span class='line'> 20</span> * Initiates the termination of the application, returning an exit code.
|
|
28
|
+
<span class='line'> 21</span> * @param {int} An exit code (only 0 or 1 can be returned).
|
|
29
|
+
<span class='line'> 22</span> * invoke the command with.
|
|
30
|
+
<span class='line'> 23</span> */</span><span class="WHIT">
|
|
31
|
+
<span class='line'> 24</span> </span><span class="WHIT"> </span><span class="NAME">exit</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">exitCode</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
32
|
+
<span class='line'> 25</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">exitWithCode</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
33
|
+
<span class='line'> 26</span> </span><span class="WHIT"> </span><span class="NAME">Sys.run</span><span class="PUNC">(</span><span class="STRN">'/usr/bin/env'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'ruby'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'-e'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'"Process.kill(Process.ppid, 9)"'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
34
|
+
<span class='line'> 27</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
35
|
+
<span class='line'> 28</span>
|
|
36
|
+
<span class='line'> 29</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="NAME">exitZero</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
37
|
+
<span class='line'> 30</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">appStartup</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$Cc</span><span class="PUNC">[</span><span class="STRN">"@mozilla.org/toolkit/app-startup;1"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">getService</span><span class="PUNC">(</span><span class="NAME">$Ci.nsIAppStartup</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
38
|
+
<span class='line'> 31</span> </span><span class="WHIT"> </span><span class="NAME">appStartup.quit</span><span class="PUNC">(</span><span class="NAME">$Ci.nsIAppStartup.eForceQuit</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
39
|
+
<span class='line'> 32</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
40
|
+
<span class='line'> 33</span>
|
|
41
|
+
<span class='line'> 34</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">exitCode</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">exitZero</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">exitWithCode</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
42
|
+
<span class='line'> 35</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
|
43
|
+
<span class='line'> 36</span>
|
|
44
|
+
<span class='line'> 37</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
|
45
|
+
<span class='line'> 38</span> * Runs the command given as the first parameter with the arguments given as the remaining
|
|
46
|
+
<span class='line'> 39</span> * parameters and returns an object containing the exit status (as the exitStatus property)
|
|
47
|
+
<span class='line'> 40</span> * and command output (as the output property).
|
|
48
|
+
<span class='line'> 41</span> * @param {String[]} parameters First parameter is command name, rest are arguments to
|
|
49
|
+
<span class='line'> 42</span> * invoke the command with.
|
|
50
|
+
<span class='line'> 43</span> * @returns {Object} Object with 'exitStatus' and 'output' properties.
|
|
51
|
+
<span class='line'> 44</span> */</span><span class="WHIT">
|
|
52
|
+
<span class='line'> 45</span> </span><span class="WHIT"> </span><span class="NAME">run</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
53
|
+
<span class='line'> 46</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">tempDir</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Sys.tempDir</span><span class="PUNC">;</span><span class="WHIT">
|
|
54
|
+
<span class='line'> 47</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">popenHelper</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">File.join</span><span class="PUNC">(</span><span class="NAME">XPCOMCoreConfig.getProperty</span><span class="PUNC">(</span><span class="STRN">'binRoot'</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"popen_helper.sh"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
55
|
+
<span class='line'> 48</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">file</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">XPCBuiltins.nsILocalFile</span><span class="PUNC">(</span><span class="NAME">popenHelper</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
56
|
+
<span class='line'> 49</span>
|
|
57
|
+
<span class='line'> 50</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">process</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$Cc</span><span class="PUNC">[</span><span class="STRN">"@mozilla.org/process/util;1"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">createInstance</span><span class="PUNC">(</span><span class="NAME">$Ci.nsIProcess</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
58
|
+
<span class='line'> 51</span> </span><span class="WHIT"> </span><span class="NAME">process.init</span><span class="PUNC">(</span><span class="NAME">file</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
59
|
+
<span class='line'> 52</span> </span><span class="WHIT">
|
|
60
|
+
<span class='line'> 53</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">args</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Array.prototype.slice.call</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
61
|
+
<span class='line'> 54</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">procArgs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">tempDir</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"stdout"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">concat</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
62
|
+
<span class='line'> 55</span> </span><span class="WHIT">
|
|
63
|
+
<span class='line'> 56</span> </span><span class="NAME">process.run</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">procArgs</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">procArgs.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
64
|
+
<span class='line'> 57</span> </span><span class="WHIT">
|
|
65
|
+
<span class='line'> 58</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">outputPipe</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">File.join</span><span class="PUNC">(</span><span class="NAME">tempDir</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">process.pid</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">".stdout.pipe"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
66
|
+
<span class='line'> 59</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">outputPipeFile</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">XPCBuiltins.nsILocalFile</span><span class="PUNC">(</span><span class="NAME">outputPipe</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
67
|
+
<span class='line'> 60</span>
|
|
68
|
+
<span class='line'> 61</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">thread</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$Cc</span><span class="PUNC">[</span><span class="STRN">"@mozilla.org/thread-manager;1"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">getService</span><span class="PUNC">(</span><span class="NAME">$Ci.nsIThreadManager</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">currentThread</span><span class="PUNC">;</span><span class="WHIT">
|
|
69
|
+
<span class='line'> 62</span> </span><span class="WHIT">
|
|
70
|
+
<span class='line'> 63</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">output</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
|
71
|
+
<span class='line'> 64</span> </span><span class="WHIT"> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">outputPipeFile.exists</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
72
|
+
<span class='line'> 65</span> </span><span class="WHIT"> </span><span class="NAME">thread.processNextEvent</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
73
|
+
<span class='line'> 66</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
|
74
|
+
<span class='line'> 67</span> </span><span class="WHIT">
|
|
75
|
+
<span class='line'> 68</span> </span><span class="NAME">output</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">File.read</span><span class="PUNC">(</span><span class="NAME">outputPipe</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
76
|
+
<span class='line'> 69</span> </span><span class="WHIT">
|
|
77
|
+
<span class='line'> 70</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">process.exitValue</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
|
78
|
+
<span class='line'> 71</span> </span><span class="WHIT"> </span><span class="NAME">thread.processNextEvent</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
79
|
+
<span class='line'> 72</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
80
|
+
<span class='line'> 73</span>
|
|
81
|
+
<span class='line'> 74</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="NAME">exitStatus</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">process.exitValue</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">output</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">output</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
|
82
|
+
<span class='line'> 75</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
|
83
|
+
<span class='line'> 76</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
|
84
|
+
<span class='line'> 77</span> </span></pre></body></html>
|
|
@@ -272,6 +272,15 @@ ul.inheritsList
|
|
|
272
272
|
</thead>
|
|
273
273
|
<tbody>
|
|
274
274
|
|
|
275
|
+
<tr>
|
|
276
|
+
<td class="attributes"><static> </td>
|
|
277
|
+
<td class="nameDescription">
|
|
278
|
+
<div class="fixedFont">Sys.<b><a href="../symbols/sys.html#.exit">exit</a></b>(An)
|
|
279
|
+
</div>
|
|
280
|
+
<div class="description">Initiates the termination of the application, returning an exit code.</div>
|
|
281
|
+
</td>
|
|
282
|
+
</tr>
|
|
283
|
+
|
|
275
284
|
<tr>
|
|
276
285
|
<td class="attributes"><static> </td>
|
|
277
286
|
<td class="nameDescription">
|
|
@@ -331,6 +340,43 @@ and command output (as the output property).</div>
|
|
|
331
340
|
Method Detail
|
|
332
341
|
</div>
|
|
333
342
|
|
|
343
|
+
<a name=".exit"> </a>
|
|
344
|
+
<div class="fixedFont"><static>
|
|
345
|
+
|
|
346
|
+
|
|
347
|
+
<span class="light">Sys.</span><b>exit</b>(An)
|
|
348
|
+
|
|
349
|
+
</div>
|
|
350
|
+
<div class="description">
|
|
351
|
+
Initiates the termination of the application, returning an exit code.
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
</div>
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
<dl class="detailList">
|
|
360
|
+
<dt class="heading">Parameters:</dt>
|
|
361
|
+
|
|
362
|
+
<dt>
|
|
363
|
+
<span class="light fixedFont">{int}</span> <b>An</b>
|
|
364
|
+
|
|
365
|
+
</dt>
|
|
366
|
+
<dd>exit code (only 0 or 1 can be returned).
|
|
367
|
+
invoke the command with.</dd>
|
|
368
|
+
|
|
369
|
+
</dl>
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
<hr />
|
|
379
|
+
|
|
334
380
|
<a name=".run"> </a>
|
|
335
381
|
<div class="fixedFont"><static>
|
|
336
382
|
|
|
@@ -389,7 +435,7 @@ invoke the command with.</dd>
|
|
|
389
435
|
<!-- ============================== footer ================================= -->
|
|
390
436
|
<div class="fineprint" style="clear:both">
|
|
391
437
|
|
|
392
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
438
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
393
439
|
</div>
|
|
394
440
|
</body>
|
|
395
441
|
</html>
|
|
@@ -309,7 +309,7 @@ ul.inheritsList
|
|
|
309
309
|
<!-- ============================== footer ================================= -->
|
|
310
310
|
<div class="fineprint" style="clear:both">
|
|
311
311
|
|
|
312
|
-
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on
|
|
312
|
+
Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.3.2 on Sat Oct 24 2009 19:09:08 GMT-0500 (CDT)
|
|
313
313
|
</div>
|
|
314
314
|
</body>
|
|
315
315
|
</html>
|
data/xpcomcore/lib/sys.js
CHANGED
|
@@ -16,6 +16,24 @@ var Sys = {
|
|
|
16
16
|
return $Cc["@mozilla.org/file/directory_service;1"].getService($Ci.nsIProperties).get("TmpD", $Ci.nsIFile).path;
|
|
17
17
|
},
|
|
18
18
|
|
|
19
|
+
/**
|
|
20
|
+
* Initiates the termination of the application, returning an exit code.
|
|
21
|
+
* @param {int} An exit code (only 0 or 1 can be returned).
|
|
22
|
+
* invoke the command with.
|
|
23
|
+
*/
|
|
24
|
+
exit: function(exitCode) {
|
|
25
|
+
function exitWithCode() {
|
|
26
|
+
Sys.run('/usr/bin/env', 'ruby', '-e', '"Process.kill(Process.ppid, 9)"');
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function exitZero() {
|
|
30
|
+
var appStartup = $Cc["@mozilla.org/toolkit/app-startup;1"].getService($Ci.nsIAppStartup);
|
|
31
|
+
appStartup.quit($Ci.nsIAppStartup.eForceQuit);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return exitCode === 0 ? exitZero() : exitWithCode();
|
|
35
|
+
},
|
|
36
|
+
|
|
19
37
|
/**
|
|
20
38
|
* Runs the command given as the first parameter with the arguments given as the remaining
|
|
21
39
|
* parameters and returns an object containing the exit status (as the exitStatus property)
|
data/xpcomcore/test/file_test.js
CHANGED
|
@@ -1,29 +1,30 @@
|
|
|
1
1
|
require("test_helper");
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
var fileTestPaths = { dir: $CURRENT_DIRECTORY, file: $CURRENT_FILE };
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
Riot.context("File", function() {
|
|
6
|
+
should("concatenate paths", function(){
|
|
7
|
+
return File.join(fileTestPaths.dir, "file_test.js");
|
|
8
|
+
}).equals(fileTestPaths.file);
|
|
8
9
|
|
|
9
10
|
should("read the entire contents of a file with File.read without a maxBytes argument", function(){
|
|
10
|
-
return File.read(File.join(
|
|
11
|
+
return File.read(File.join(fileTestPaths.dir, "fixtures", "love.js"));
|
|
11
12
|
}).equals("var love = true;");
|
|
12
13
|
|
|
13
14
|
should("read the given numbers of bytes using File.read with a maxBytes argument", function(){
|
|
14
|
-
return File.read(File.join(
|
|
15
|
+
return File.read(File.join(fileTestPaths.dir, "fixtures", "love.js"), 8);
|
|
15
16
|
}).equals("var love");
|
|
16
17
|
|
|
17
18
|
should("not throw an exception with a maxBytes argument of 0 to File.read", function(){
|
|
18
|
-
return File.read(File.join(
|
|
19
|
+
return File.read(File.join(fileTestPaths.dir, "fixtures", "love.js"), 0);
|
|
19
20
|
}).equals("");
|
|
20
21
|
|
|
21
22
|
should("not throw an exception when reading an empty file", function(){
|
|
22
|
-
return File.read(File.join(
|
|
23
|
+
return File.read(File.join(fileTestPaths.dir, "fixtures", "empty"));
|
|
23
24
|
}).equals("");
|
|
24
25
|
|
|
25
26
|
should("throw an exception with a non existent file given to File.read", function(){
|
|
26
27
|
File.read("/tmp/ohmanihopethisfiledoesntexist");
|
|
27
28
|
}).raises("File.NoSuchFileError");
|
|
28
29
|
|
|
29
|
-
});
|
|
30
|
+
});
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
require("test_helper");
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
var kernelTestPaths = { dir: $CURRENT_DIRECTORY, file: $CURRENT_FILE };
|
|
4
|
+
|
|
5
|
+
Riot.context("Kernel", function() {
|
|
6
|
+
|
|
5
7
|
setup(function() {
|
|
6
|
-
$LOAD_PATH.push(File.join(
|
|
8
|
+
$LOAD_PATH.push(File.join(kernelTestPaths.dir, "fixtures"));
|
|
7
9
|
});
|
|
8
10
|
|
|
9
11
|
should("mix its properties into the passed in scope when used as a function", function(){
|
|
@@ -13,19 +15,19 @@ Riot.context("Kernel", function(should, setup) {
|
|
|
13
15
|
}).equals(Kernel.prototype.__count__);
|
|
14
16
|
|
|
15
17
|
should("expose $CURRENT_FILE as a getter that returns a value that is a string", function(){
|
|
16
|
-
return
|
|
18
|
+
return kernelTestPaths.file;
|
|
17
19
|
}).isTypeOf("string");
|
|
18
20
|
|
|
19
21
|
should("have $CURRENT_FILE end in kernel_test.js", function(){
|
|
20
|
-
return
|
|
22
|
+
return kernelTestPaths.file;
|
|
21
23
|
}).matches(/kernel_test.js$/);
|
|
22
24
|
|
|
23
25
|
should("expose $CURRENT_DIRECTORY as a getter that returns a value that is a string", function(){
|
|
24
|
-
return
|
|
26
|
+
return kernelTestPaths.dir;
|
|
25
27
|
}).isTypeOf("string");
|
|
26
28
|
|
|
27
29
|
should("have $CURRENT_DIRECTORY end in test", function(){
|
|
28
|
-
return
|
|
30
|
+
return kernelTestPaths.dir;
|
|
29
31
|
}).matches(/test$/);
|
|
30
32
|
|
|
31
33
|
should("throw an exception when you give load a non-existent resource", function() {
|
|
@@ -49,7 +51,7 @@ Riot.context("Kernel", function(should, setup) {
|
|
|
49
51
|
|
|
50
52
|
should("allow loading using absolute paths", function() {
|
|
51
53
|
love = false;
|
|
52
|
-
var absolutePath = File.join(
|
|
54
|
+
var absolutePath = File.join(kernelTestPaths.dir, "fixtures", "love.js");
|
|
53
55
|
// FIXME: this is unix-only and janky:
|
|
54
56
|
if (!absolutePath.match(/^\//)) { throw("Expected an absolute path."); }
|
|
55
57
|
|
|
@@ -84,4 +86,4 @@ Riot.context("Kernel", function(should, setup) {
|
|
|
84
86
|
return $ENV.get('XPCOMCORETEST');
|
|
85
87
|
}).equals("testing");
|
|
86
88
|
|
|
87
|
-
});
|
|
89
|
+
});
|
|
@@ -5,6 +5,8 @@ if (Gem.isSupported) {
|
|
|
5
5
|
|
|
6
6
|
Riot.context("RubyGems", function(should) {
|
|
7
7
|
|
|
8
|
+
asserts("This space intentionally left blank.", true);
|
|
9
|
+
|
|
8
10
|
// should("have Sys.tempDir return a string path to the OS temporary directory", function(){
|
|
9
11
|
// var tempDir = XPCBuiltins.nsILocalFile(Sys.tempDir);
|
|
10
12
|
// return tempDir.exists();
|
|
@@ -14,4 +16,4 @@ if (Gem.isSupported) {
|
|
|
14
16
|
|
|
15
17
|
} else {
|
|
16
18
|
puts("Warning - Gem support isn't available on your system so the RubyGems support tests will be skipped.");
|
|
17
|
-
}
|
|
19
|
+
}
|
data/xpcomcore/test/sys_test.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
require("test_helper");
|
|
2
2
|
|
|
3
|
-
Riot.context("Sys", function(
|
|
3
|
+
Riot.context("Sys", function() {
|
|
4
4
|
|
|
5
5
|
should("have Sys.tempDir return a string path to the OS temporary directory", function(){
|
|
6
6
|
var tempDir = XPCBuiltins.nsILocalFile(Sys.tempDir);
|
|
@@ -15,4 +15,4 @@ Riot.context("Sys", function(should) {
|
|
|
15
15
|
return Sys.run("echo", "foo bar baz").output;
|
|
16
16
|
}).equals("foo bar baz\n");
|
|
17
17
|
|
|
18
|
-
});
|
|
18
|
+
});
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
require("test_helper");
|
|
2
2
|
|
|
3
|
-
Riot.context("XPCBuiltins", function(
|
|
3
|
+
Riot.context("XPCBuiltins", function() {
|
|
4
4
|
|
|
5
5
|
should("have the constructor for nsILocalFile should return an nsILocalFile QI'd object", function() {
|
|
6
6
|
var localFile = new XPCBuiltins.nsILocalFile("/");
|
|
7
7
|
return localFile.toString();
|
|
8
8
|
}).matches(/nsILocalFile/);
|
|
9
9
|
|
|
10
|
-
});
|
|
10
|
+
});
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: xpcomcore-rubygem
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.6.
|
|
4
|
+
version: 0.6.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- ggironda
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date: 2009-10-
|
|
12
|
+
date: 2009-10-24 00:00:00 -05:00
|
|
13
13
|
default_executable:
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|