aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/wt/odlux/core/model/src/main
diff options
context:
space:
mode:
authorHerbert Eiselt <herbert.eiselt@highstreet-technologies.com>2019-02-28 15:23:42 +0100
committerHerbert Eiselt <herbert.eiselt@highstreet-technologies.com>2019-02-28 15:24:28 +0100
commit7446f23b3abc30d7c53f2eaa951742371c071171 (patch)
treeb76a8d2e64c7aa850c09f8e69f01e7a262ab5cd5 /sdnr/wt/odlux/core/model/src/main
parent49b155ec687cdf58fb51fe8245a2f5f4582b68f0 (diff)
UX extensions
UX Maintenance client and further changes Change-Id: I7643661d17db5fc3d3f94b58cb42ed0be558c64f Issue-ID: SDNC-583 Signed-off-by: Herbert Eiselt <herbert.eiselt@highstreet-technologies.com>
Diffstat (limited to 'sdnr/wt/odlux/core/model/src/main')
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java37
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/ClassLoaderUtilExt.java21
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/IndexOdlBundle.java12
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundle.java51
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleList.java20
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoader.java7
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoaderImpl.java62
-rw-r--r--sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleResourceAccess.java18
8 files changed, 69 insertions, 159 deletions
diff --git a/sdnr/wt/odlux/core/model/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java b/sdnr/wt/odlux/core/model/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java
index 10705b0ea..133b08494 100644
--- a/sdnr/wt/odlux/core/model/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java
+++ b/sdnr/wt/odlux/core/model/src/main/java/com/opensymphony/xwork2/util/ClassLoaderUtil.java
@@ -1,12 +1,12 @@
/*
* Copyright 2002-2003,2009 The Apache Software Foundation.
- *
+ *
* 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.
@@ -27,7 +27,7 @@ import java.util.*;
*
* It has come out of many months of frustrating use of multiple application servers at Atlassian,
* please don't change things unless you're sure they're not going to break in one server or another!
- *
+ *
* It was brought in from oscore trunk revision 147.
*
* @author $Author$
@@ -37,7 +37,7 @@ public class ClassLoaderUtil {
//~ Methods ////////////////////////////////////////////////////////////////
/**
- * Load all resources with a given name, potentially aggregating all results
+ * Load all resources with a given name, potentially aggregating all results
* from the searched classloaders. If no results are found, the resource name
* is prepended by '/' and tried again.
*
@@ -51,9 +51,9 @@ public class ClassLoaderUtil {
* @param resourceName The name of the resources to load
* @param callingClass The Class object of the calling object
*/
- public static Iterator<URL> getResources(String resourceName, Class callingClass, boolean aggregate) throws IOException {
+ public static Iterator<URL> getResources(String resourceName, Class<?> callingClass, boolean aggregate) throws IOException {
- AggregateIterator<URL> iterator = new AggregateIterator<URL>();
+ AggregateIterator<URL> iterator = new AggregateIterator<>();
iterator.addEnumeration(Thread.currentThread().getContextClassLoader().getResources(resourceName));
@@ -69,7 +69,7 @@ public class ClassLoaderUtil {
}
}
- if (!iterator.hasNext() && (resourceName != null) && ((resourceName.length() == 0) || (resourceName.charAt(0) != '/'))) {
+ if (!iterator.hasNext() && resourceName != null && (resourceName.length() == 0 || resourceName.charAt(0) != '/')) {
return getResources('/' + resourceName, callingClass, aggregate);
}
@@ -89,7 +89,7 @@ public class ClassLoaderUtil {
* @param resourceName The name IllegalStateException("Unable to call ")of the resource to load
* @param callingClass The Class object of the calling object
*/
- public static URL getResource(String resourceName, Class callingClass) {
+ public static URL getResource(String resourceName, Class<?> callingClass) {
URL url = Thread.currentThread().getContextClassLoader().getResource(resourceName);
if (url == null) {
@@ -104,7 +104,7 @@ public class ClassLoaderUtil {
}
}
- if ((url == null) && (resourceName != null) && ((resourceName.length() == 0) || (resourceName.charAt(0) != '/'))) {
+ if (url == null && resourceName != null && (resourceName.length() == 0 || resourceName.charAt(0) != '/')) {
return getResource('/' + resourceName, callingClass);
}
@@ -119,11 +119,11 @@ public class ClassLoaderUtil {
* @param resourceName The name of the resource to load
* @param callingClass The Class object of the calling object
*/
- public static InputStream getResourceAsStream(String resourceName, Class callingClass) {
+ public static InputStream getResourceAsStream(String resourceName, Class<?> callingClass) {
URL url = getResource(resourceName, callingClass);
try {
- return (url != null) ? url.openStream() : null;
+ return url != null ? url.openStream() : null;
} catch (IOException e) {
return null;
}
@@ -144,7 +144,7 @@ public class ClassLoaderUtil {
* @param callingClass The Class object of the calling object
* @throws ClassNotFoundException If the class cannot be found anywhere.
*/
- public static Class loadClass(String className, Class callingClass) throws ClassNotFoundException {
+ public static Class<?> loadClass(String className, Class<?> callingClass) throws ClassNotFoundException {
try {
return Thread.currentThread().getContextClassLoader().loadClass(className);
} catch (ClassNotFoundException e) {
@@ -166,10 +166,10 @@ public class ClassLoaderUtil {
*/
static class AggregateIterator<E> implements Iterator<E> {
- LinkedList<Enumeration<E>> enums = new LinkedList<Enumeration<E>>();
+ LinkedList<Enumeration<E>> enums = new LinkedList<>();
Enumeration<E> cur = null;
E next = null;
- Set<E> loaded = new HashSet<E>();
+ Set<E> loaded = new HashSet<>();
public AggregateIterator<E> addEnumeration(Enumeration<E> e) {
if (e.hasMoreElements()) {
@@ -184,10 +184,12 @@ public class ClassLoaderUtil {
return this;
}
+ @Override
public boolean hasNext() {
- return (next != null);
+ return next != null;
}
+ @Override
public E next() {
if (next != null) {
E prev = next;
@@ -228,8 +230,9 @@ public class ClassLoaderUtil {
}
+ @Override
public void remove() {
throw new UnsupportedOperationException();
}
}
-} \ No newline at end of file
+}
diff --git a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/ClassLoaderUtilExt.java b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/ClassLoaderUtilExt.java
index 08d243666..4b58aac44 100644
--- a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/ClassLoaderUtilExt.java
+++ b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/ClassLoaderUtilExt.java
@@ -6,9 +6,9 @@
* =================================================================================================
* 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
@@ -30,15 +30,14 @@ public class ClassLoaderUtilExt {
final static Logger LOG = LoggerFactory.getLogger(ClassLoaderUtilExt.class);
- public static URL getResource(String resourceName, Class callingClass) {
+ public static URL getResource(String resourceName, Class<?> callingClass) {
Iterator<URL> urls = null;
URL url = null;
try {
urls = getResources(resourceName, callingClass, true);
} catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
+ LOG.debug("No resource {}",resourceName);
}
if (urls != null) {
while (urls.hasNext()) {
@@ -51,12 +50,20 @@ public class ClassLoaderUtilExt {
if (url == null) {
LOG.debug("res currently not found. try to find with bundle");
Bundle b = FrameworkUtil.getBundle(callingClass);
- url = b.getEntry(resourceName);
+ if(b!=null)
+ {
+ url = b.getEntry(resourceName);
+ }
+ else {
+ ClassLoader loader = Thread.currentThread().getContextClassLoader();
+ url = loader.getResource(resourceName);
+ }
+
}
return url;
}
- public static Iterator<URL> getResources(String resourceName, Class callingClass, boolean aggregate)
+ public static Iterator<URL> getResources(String resourceName, Class<?> callingClass, boolean aggregate)
throws IOException {
return ClassLoaderUtil.getResources(resourceName, callingClass, aggregate);
}
diff --git a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/IndexOdlBundle.java b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/IndexOdlBundle.java
new file mode 100644
index 000000000..66ff5658a
--- /dev/null
+++ b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/IndexOdlBundle.java
@@ -0,0 +1,12 @@
+/*
+ * Copyright (c) 2019 Red Hat, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.onap.ccsdk.features.sdnr.wt.odlux.model.bundles;
+
+public interface IndexOdlBundle {
+
+}
diff --git a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundle.java b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundle.java
index 448169fad..e85c88b6f 100644
--- a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundle.java
+++ b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundle.java
@@ -21,11 +21,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.BufferedReader;
import java.io.IOException;
-import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
/**
* At startup of each karaf bundle, each UI module creates an instance of this class via blueprint.
@@ -81,22 +78,6 @@ public class OdluxBundle {
public void initialize() {
LOG.info("Registering resources");
- try {
- List<String> resources = this.getResourceFiles("/odlux");
- if (resources.size() > 0) {
- for (String res : resources) {
- LOG.debug("found res " + res);
- }
- } else {
- String res = "/odlux/" + this.getBundleName() + ".js";
- if (this.hasResource(res)) {
- LOG.debug("found res " + res);
- } else
- LOG.warn("no resources found in bundle");
- }
- } catch (IOException e) {
- LOG.debug("problem searching for resources: " + e.getMessage());
- }
if (this.loader != null) {
if (this.bundleName == null)
LOG.error("bundle name is missing. Bundle can not be registered with odlux");
@@ -149,36 +130,4 @@ public class OdluxBundle {
return sb.toString();
}
- private List<String> getResourceFiles(String path) throws IOException {
- List<String> filenames = new ArrayList<>();
-
- try {
-
- InputStream in = getResourceAsStream(path);
- if (in != null) {
- BufferedReader br = new BufferedReader(new InputStreamReader(in));
- if (br != null) {
- String resource;
-
- while ((resource = br.readLine()) != null) {
- filenames.add(resource);
- }
- }
- }
- } catch (Exception e) {
- LOG.warn("problem loading res " + path);
- }
-
- return filenames;
- }
-
- private InputStream getResourceAsStream(String resource) {
- final InputStream in = getContextClassLoader().getResourceAsStream(resource);
-
- return in == null ? getClass().getResourceAsStream(resource) : in;
- }
-
- private ClassLoader getContextClassLoader() {
- return Thread.currentThread().getContextClassLoader();
- }
}
diff --git a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleList.java b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleList.java
deleted file mode 100644
index c2a514399..000000000
--- a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleList.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.onap.ccsdk.features.sdnr.wt.odlux.model.bundles;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class OdluxBundleList extends ArrayList<OdluxBundle>{
-
- /**
- *
- */
- private static final long serialVersionUID = 8365348398621906220L;
-
- public List<String> getNames(){
- final List<String> names=new ArrayList<String>();
- for(OdluxBundle b:this)
- names.add(b.getBundleName());
- return names;
- }
-
-}
diff --git a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoader.java b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoader.java
index e288ee3ec..5c8231e9c 100644
--- a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoader.java
+++ b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoader.java
@@ -6,9 +6,9 @@
* =================================================================================================
* 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
@@ -22,4 +22,7 @@ public interface OdluxBundleLoader {
public void addBundle(OdluxBundle bundle);
public void removeBundle(OdluxBundle bundle);
+
+ public int getNumberOfBundles();
+
}
diff --git a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoaderImpl.java b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoaderImpl.java
deleted file mode 100644
index 5b15be35c..000000000
--- a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleLoaderImpl.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * ============LICENSE_START========================================================================
- * ONAP : ccsdk feature sdnr wt
- * =================================================================================================
- * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
- * =================================================================================================
- * 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.
- * ============LICENSE_END==========================================================================
- ******************************************************************************/
-package org.onap.ccsdk.features.sdnr.wt.odlux.model.bundles;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class OdluxBundleLoaderImpl implements OdluxBundleLoader {
-
- final static Logger LOG = LoggerFactory.getLogger(OdluxBundleLoaderImpl.class);
- private static OdluxBundleLoaderImpl mObj;
-
- public static OdluxBundleLoaderImpl getInstance() {
- if (mObj == null)
- mObj = new OdluxBundleLoaderImpl();
- return mObj;
- }
-
- private final List<OdluxBundle> bundles;
-
- public synchronized List<OdluxBundle> getBundles() {
- return this.bundles;
- }
-
- public OdluxBundleLoaderImpl() {
- this.bundles = Collections.synchronizedList(new ArrayList<OdluxBundle>());
- mObj = this;
- }
-
- @Override
- public synchronized void addBundle(OdluxBundle bundle) {
- LOG.debug("odlux bundle " + bundle.getBundleName() + " added");
- this.bundles.add(bundle);
-
- }
-
- @Override
- public synchronized void removeBundle(OdluxBundle bundle) {
- this.bundles.remove(bundle);
- LOG.debug("odlux bundle " + bundle.getBundleName() + " removed");
-
- }
-
-}
diff --git a/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleResourceAccess.java b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleResourceAccess.java
new file mode 100644
index 000000000..e2ec04f83
--- /dev/null
+++ b/sdnr/wt/odlux/core/model/src/main/java/org/onap/ccsdk/features/sdnr/wt/odlux/model/bundles/OdluxBundleResourceAccess.java
@@ -0,0 +1,18 @@
+/*
+ * Copyright (c) 2019 Red Hat, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.onap.ccsdk.features.sdnr.wt.odlux.model.bundles;
+
+import java.util.List;
+
+public interface OdluxBundleResourceAccess {
+
+ boolean hasResource(String fn);
+ String getResourceFileContent(String fn, List<String> bundleNames);
+ String getBundleName();
+
+}