Quellcode durchsuchen

Simplifies code.

release-8443
Boris Grozev vor 10 Jahren
Ursprung
Commit
f507ba00cf
3 geänderte Dateien mit 58 neuen und 22 gelöschten Zeilen
  1. 3
    2
      JitsiConnection.js
  2. 52
    18
      modules/util/RandomUtil.js
  3. 3
    2
      modules/xmpp/LocalSSRCReplacement.js

+ 3
- 2
JitsiConnection.js Datei anzeigen

@@ -8,8 +8,9 @@ var RandomUtil = require("./modules/util/RandomUtil");
8 8
  * @returns {string}
9 9
  */
10 10
 function generateUserName() {
11
-    return RandomUtil.random8digitsHex() + "-" + RandomUtil.random4digitsHex() + "-" +
12
-        RandomUtil.random4digitsHex() + "-" + RandomUtil.random8digitsHex();
11
+    return RandomUtil.randomHexString(8) + "-" + RandomUtil.randomHexString(4) +
12
+        "-" + RandomUtil.randomHexString(4) + "-" +
13
+        RandomUtil.randomHexDigit(8);
13 14
 }
14 15
 
15 16
 /**

+ 52
- 18
modules/util/RandomUtil.js Datei anzeigen

@@ -1,13 +1,47 @@
1
+/**
2
+/**
3
+ * @const
4
+ */
5
+var ALPHANUM = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
1 6
 
2 7
 /**
3
- * Generates random hex number within the range [min, max]
4
- * @param max the maximum value for the generated number
8
+ * Hexadecimal digits.
9
+ * @const
10
+ */
11
+var HEX_DIGITS = '0123456789abcdef';
12
+
13
+/**
14
+ * Generates random int within the range [min, max]
5 15
  * @param min the minimum value for the generated number
6
- * @returns random hex number
16
+ * @param max the maximum value for the generated number
17
+ * @returns random int number
18
+ */
19
+function randomInt(min, max) {
20
+    return Math.floor(Math.random() * (max - min + 1)) + min;
21
+}
22
+
23
+/**
24
+ * Get random element from array or string.
25
+ * @param {Array|string} arr source
26
+ * @returns array element or string character
7 27
  */
8
-function rangeRandomHex(min, max)
9
-{
10
-    return Math.floor(Math.random() * (max - min) + min).toString(16);
28
+function randomElement(arr) {
29
+    return arr[randomInt(0, arr.length - 1)];
30
+}
31
+
32
+/**
33
+ * Generate random alphanumeric string.
34
+ * @param {number} length expected string length
35
+ * @returns {string} random string of specified length
36
+ */
37
+function randomAlphanumStr(length) {
38
+    var result = '';
39
+
40
+    for (var i = 0; i < length; i += 1) {
41
+        result += randomElement(ALPHANUM);
42
+    }
43
+
44
+    return result;
11 45
 }
12 46
 
13 47
 /**
@@ -15,22 +49,22 @@ function rangeRandomHex(min, max)
15 49
  */
16 50
 var RandomUtil = {
17 51
     /**
18
-     * Generates hex number with length 4
19
-     */
20
-    random4digitsHex: function () {
21
-        return rangeRandomHex(0x1000, 0xFFFF);
22
-    },
23
-    /**
24
-     * Generates hex number with length 8
52
+     * Returns a random hex digit.
53
+     * @returns {*}
25 54
      */
26
-    random8digitsHex: function () {
27
-        return rangeRandomHex(0x10000000, 0xFFFFFFFF);
55
+    randomHexDigit: function() {
56
+        return randomElement(HEX_DIGITS);
28 57
     },
29 58
     /**
30
-     * Generates hex number with length 12
59
+     * Returns a random string of hex digits with length 'len'.
60
+     * @param len the length.
31 61
      */
32
-    random12digitsHex: function () {
33
-        return rangeRandomHex(0x100000000000, 0xFFFFFFFFFFFF);
62
+    randomHexString: function (len) {
63
+        var ret = '';
64
+        while (len--) {
65
+            ret += this.randomHexDigit();
66
+        }
67
+        return ret;
34 68
     }
35 69
 };
36 70
 

+ 3
- 2
modules/xmpp/LocalSSRCReplacement.js Datei anzeigen

@@ -132,8 +132,9 @@ var storeLocalVideoSSRC = function (jingleIq) {
132 132
  * @returns {string} label/mslabel attribute
133 133
  */
134 134
 function generateLabel() {
135
-    return RandomUtil.random8digitsHex() + "-" + RandomUtil.random4digitsHex() + "-" +
136
-           RandomUtil.random4digitsHex() + "-" + RandomUtil.random4digitsHex() + "-" + RandomUtil.random12digitsHex();
135
+    return RandomUtil.randomHexString(8) + "-" + RandomUtil.randomHexString(4) +
136
+        "-" + RandomUtil.randomHexString(4) + "-" +
137
+        RandomUtil.randomHexString(4) + "-" + RandomUtil.randomHexString(12);
137 138
 }
138 139
 
139 140
 /**

Laden…
Abbrechen
Speichern