Author: sseifert
Date: Tue May 19 08:40:54 2015
New Revision: 1680202

URL: http://svn.apache.org/r1680202
Log:
SLING-4725 osgi-mock: Make compatible to OSGi 5/6

Modified:
    sling/trunk/testing/mocks/osgi-mock/pom.xml
    
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundle.java
    
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundleContext.java
    
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockFilter.java
    
sling/trunk/testing/mocks/osgi-mock/src/test/java/org/apache/sling/testing/mock/osgi/MockEventAdminTest.java

Modified: sling/trunk/testing/mocks/osgi-mock/pom.xml
URL: 
http://svn.apache.org/viewvc/sling/trunk/testing/mocks/osgi-mock/pom.xml?rev=1680202&r1=1680201&r2=1680202&view=diff
==============================================================================
--- sling/trunk/testing/mocks/osgi-mock/pom.xml (original)
+++ sling/trunk/testing/mocks/osgi-mock/pom.xml Tue May 19 08:40:54 2015
@@ -130,5 +130,25 @@
     
         </plugins>
     </build>
+    
+    <profiles>
+      <profile>
+        <id>osgi-6</id>
+        <dependencies>
+          <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.core</artifactId>
+            <version>6.0.0</version>
+            <scope>provided</scope>
+          </dependency>
+          <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.compendium</artifactId>
+            <version>5.0.0</version>
+            <scope>provided</scope>
+          </dependency>
+        </dependencies>
+      </profile>
+    </profiles>
   
 </project>

Modified: 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundle.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundle.java?rev=1680202&r1=1680201&r2=1680202&view=diff
==============================================================================
--- 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundle.java
 (original)
+++ 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundle.java
 Tue May 19 08:40:54 2015
@@ -18,10 +18,13 @@
  */
 package org.apache.sling.testing.mock.osgi;
 
+import java.io.File;
 import java.io.InputStream;
 import java.net.URL;
+import java.security.cert.X509Certificate;
 import java.util.Dictionary;
 import java.util.Enumeration;
+import java.util.List;
 import java.util.Map;
 
 import org.osgi.framework.Bundle;
@@ -70,22 +73,22 @@ class MockBundle implements Bundle {
 
     // --- unsupported operations ---
     @Override
-    public Enumeration<?> findEntries(final String path, final String 
filePattern, final boolean recurse) {
+    public Enumeration<URL> findEntries(final String path, final String 
filePattern, final boolean recurse) {
         throw new UnsupportedOperationException();
     }
 
     @Override
-    public Enumeration<?> getEntryPaths(final String path) {
+    public Enumeration<String> getEntryPaths(final String path) {
         throw new UnsupportedOperationException();
     }
 
     @Override
-    public Dictionary<?, ?> getHeaders() {
+    public Dictionary<String, String> getHeaders() {
         throw new UnsupportedOperationException();
     }
 
     @Override
-    public Dictionary<?, ?> getHeaders(final String locale) {
+    public Dictionary<String, String> getHeaders(final String locale) {
         throw new UnsupportedOperationException();
     }
 
@@ -110,7 +113,7 @@ class MockBundle implements Bundle {
     }
 
     @Override
-    public Enumeration<?> getResources(final String name) {
+    public Enumeration<URL> getResources(final String name) {
         throw new UnsupportedOperationException();
     }
 
@@ -170,7 +173,7 @@ class MockBundle implements Bundle {
     }
 
     // this is part of org.osgi 4.2.0
-    public Map getSignerCertificates(final int signersType) {
+    public Map<X509Certificate, List<X509Certificate>> 
getSignerCertificates(final int signersType) {
         throw new UnsupportedOperationException();
     }
 
@@ -179,4 +182,19 @@ class MockBundle implements Bundle {
         throw new UnsupportedOperationException();
     }
 
+    // this is part of org.osgi.core 6.0.0
+    public int compareTo(Bundle o) {
+        throw new UnsupportedOperationException();
+    }
+
+    // this is part of org.osgi.core 6.0.0
+    public <A> A adapt(Class<A> type) {
+        throw new UnsupportedOperationException();
+    }
+
+    // this is part of org.osgi.core 6.0.0
+    public File getDataFile(String filename) {
+        throw new UnsupportedOperationException();
+    }
+
 }

Modified: 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundleContext.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundleContext.java?rev=1680202&r1=1680201&r2=1680202&view=diff
==============================================================================
--- 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundleContext.java
 (original)
+++ 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockBundleContext.java
 Tue May 19 08:40:54 2015
@@ -21,6 +21,7 @@ package org.apache.sling.testing.mock.os
 import java.io.File;
 import java.io.InputStream;
 import java.util.ArrayList;
+import java.util.Collection;
 import java.util.Dictionary;
 import java.util.List;
 import java.util.Set;
@@ -38,10 +39,13 @@ import org.osgi.framework.BundleListener
 import org.osgi.framework.Filter;
 import org.osgi.framework.FrameworkListener;
 import org.osgi.framework.ServiceEvent;
+import org.osgi.framework.ServiceFactory;
 import org.osgi.framework.ServiceListener;
 import org.osgi.framework.ServiceReference;
 import org.osgi.framework.ServiceRegistration;
 
+import com.google.common.collect.ImmutableList;
+
 /**
  * Mock {@link BundleContext} implementation.
  */
@@ -78,6 +82,11 @@ class MockBundleContext implements Bundl
         return registerService(clazzes, service, properties);
     }
 
+    // this is part of org.osgi.core 6.0.0
+    public <S> ServiceRegistration registerService(Class<S> clazz, S service, 
Dictionary<String, ?> properties) {
+        return registerService(clazz.getName(), service, properties);
+    }
+
     @SuppressWarnings("unchecked")
     @Override
     public ServiceRegistration registerService(final String[] clazzes, final 
Object service, final Dictionary properties) {
@@ -157,6 +166,11 @@ class MockBundleContext implements Bundl
         }
     }
 
+    // this is part of org.osgi.core 6.0.0
+    public ServiceReference getServiceReference(Class clazz) {
+        return getServiceReference(clazz.getName());
+    }
+
     @Override
     public ServiceReference[] getServiceReferences(final String clazz, final 
String filter) {
         Set<ServiceReference> result = new TreeSet<ServiceReference>();
@@ -172,6 +186,11 @@ class MockBundleContext implements Bundl
         }
     }
 
+    // this is part of org.osgi.core 6.0.0
+    public Collection<ServiceReference> getServiceReferences(Class clazz, 
String filter) {
+        return 
ImmutableList.<ServiceReference>copyOf(getServiceReferences(clazz.getName(), 
filter));
+    }
+
     @Override
     public ServiceReference[] getAllServiceReferences(final String clazz, 
final String filter) {
         // for now just do the same as getServiceReferences
@@ -180,7 +199,7 @@ class MockBundleContext implements Bundl
 
     @Override
     public Object getService(final ServiceReference serviceReference) {
-        return ((MockServiceReference) serviceReference).getService();
+        return ((MockServiceReference)serviceReference).getService();
     }
 
     @Override
@@ -282,4 +301,21 @@ class MockBundleContext implements Bundl
         throw new UnsupportedOperationException();
     }
 
+    // this is part of org.osgi.core 6.0.0
+    public Bundle getBundle(String location) {
+        throw new UnsupportedOperationException();
+    }
+
+    // this is part of org.osgi.core 6.0.0
+    public <S> ServiceRegistration registerService(Class<S> clazz, 
ServiceFactory factory, Dictionary<String, ?> properties) {
+        throw new UnsupportedOperationException();
+    }
+
+    // this is part of org.osgi.core 6.0.0
+    /* class org.osgi.framework.ServiceObjects does not exist in older OSGi 
versions
+    public ServiceObjects getServiceObjects(ServiceReference reference) {
+        throw new UnsupportedOperationException();
+    }
+    */
+
 }

Modified: 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockFilter.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockFilter.java?rev=1680202&r1=1680201&r2=1680202&view=diff
==============================================================================
--- 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockFilter.java
 (original)
+++ 
sling/trunk/testing/mocks/osgi-mock/src/main/java/org/apache/sling/testing/mock/osgi/MockFilter.java
 Tue May 19 08:40:54 2015
@@ -19,6 +19,7 @@
 package org.apache.sling.testing.mock.osgi;
 
 import java.util.Dictionary;
+import java.util.Map;
 
 import org.osgi.framework.Filter;
 import org.osgi.framework.ServiceReference;
@@ -43,4 +44,9 @@ class MockFilter implements Filter {
         return false;
     }
 
+    // this is part of org.osgi.core 6.0.0
+    public boolean matches(Map<String, ?> map) {
+        return false;
+    }
+
 }

Modified: 
sling/trunk/testing/mocks/osgi-mock/src/test/java/org/apache/sling/testing/mock/osgi/MockEventAdminTest.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/testing/mocks/osgi-mock/src/test/java/org/apache/sling/testing/mock/osgi/MockEventAdminTest.java?rev=1680202&r1=1680201&r2=1680202&view=diff
==============================================================================
--- 
sling/trunk/testing/mocks/osgi-mock/src/test/java/org/apache/sling/testing/mock/osgi/MockEventAdminTest.java
 (original)
+++ 
sling/trunk/testing/mocks/osgi-mock/src/test/java/org/apache/sling/testing/mock/osgi/MockEventAdminTest.java
 Tue May 19 08:40:54 2015
@@ -21,6 +21,7 @@ package org.apache.sling.testing.mock.os
 import static org.junit.Assert.assertEquals;
 
 import java.util.ArrayList;
+import java.util.Dictionary;
 import java.util.List;
 
 import org.apache.commons.lang3.ObjectUtils;
@@ -43,9 +44,9 @@ public class MockEventAdminTest {
     private static final String TOPIC_SAMPLE_ALL = "sample/*";
     private static final String TOPIC_OTHER_3 = "other/topic3";
     
-    private static final Event EVENT_SAMPLE_1 = new Event(TOPIC_SAMPLE_1, 
null);
-    private static final Event EVENT_SAMPLE_2 = new Event(TOPIC_SAMPLE_2, 
null);
-    private static final Event EVENT_OTHER_3 = new Event(TOPIC_OTHER_3, null);
+    private static final Event EVENT_SAMPLE_1 = new Event(TOPIC_SAMPLE_1, 
(Dictionary<String,?>)null);
+    private static final Event EVENT_SAMPLE_2 = new Event(TOPIC_SAMPLE_2, 
(Dictionary<String,?>)null);
+    private static final Event EVENT_OTHER_3 = new Event(TOPIC_OTHER_3, 
(Dictionary<String,?>)null);
     
     @Rule
     public OsgiContext context = new OsgiContext();


Reply via email to