efunc: generate map data
Change-Id: I613166d3ebc016fc1c37bff61a909ab60aae8836
diff --git a/web/gui/src/main/webapp/app/fw/util/ee.js b/web/gui/src/main/webapp/app/fw/util/ee.js
new file mode 100644
index 0000000..43455c2
--- /dev/null
+++ b/web/gui/src/main/webapp/app/fw/util/ee.js
@@ -0,0 +1,62 @@
+/*
+ * Copyright 2016 Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+ ONOS GUI -- Util -- EE functions
+ */
+(function () {
+ 'use strict';
+
+ // injected services
+ var fs;
+
+ // function references
+ var fcc = String.fromCharCode;
+
+ function computeTransform(x) {
+ var m = x.split(':'),
+ h = Number(m[0]),
+ d = m[1],
+ n = d.length,
+ w = [],
+ i;
+
+ for (i = 0; i<n; i+=2)
+ w.push(fcc(Number(d.slice(i, i+2))));
+
+ return fs.eecode(h, w.join(''));
+ }
+
+ function genMap(data) {
+ var map = {};
+
+ data.forEach(function (x) {
+ var r = computeTransform(x);
+ map['shift' + r.e] = r.o.toLowerCase() + '.bin';
+ });
+ return map;
+ }
+
+ angular.module('onosUtil')
+ .factory('EeService',
+ ['FnService', function (_fs_) {
+ fs = _fs_;
+
+ return {
+ genMap: genMap
+ }
+ }]);
+}());
diff --git a/web/gui/src/main/webapp/index.html b/web/gui/src/main/webapp/index.html
index 3d22c9a..5266d89 100644
--- a/web/gui/src/main/webapp/index.html
+++ b/web/gui/src/main/webapp/index.html
@@ -41,6 +41,7 @@
<script src="app/directives.js"></script>
<script src="app/fw/util/util.js"></script>
+ <script src="app/fw/util/ee.js"></script>
<script src="app/fw/util/fn.js"></script>
<script src="app/fw/util/random.js"></script>
<script src="app/fw/util/theme.js"></script>