Sync from SUSE:SLFO:Main sisu revision a7800150819e67b34dfab51425ce7a58
This commit is contained in:
commit
6367ae5445
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
20
sisu-OSGi-import-guava.patch
Normal file
20
sisu-OSGi-import-guava.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
--- sisu-inject/org.eclipse.sisu.inject/META-INF/MANIFEST.MF~ 2014-04-21 16:32:25.000000000 +0200
|
||||||
|
+++ sisu-inject/org.eclipse.sisu.inject/META-INF/MANIFEST.MF 2014-04-23 10:53:22.538142253 +0200
|
||||||
|
@@ -16,6 +16,7 @@
|
||||||
|
com.google.inject.matcher;version="1.3",
|
||||||
|
com.google.inject.name;version="1.3",
|
||||||
|
com.google.inject.spi;version="1.3",
|
||||||
|
+ com.google.common.base,
|
||||||
|
org.osgi.framework;version="1.5",
|
||||||
|
org.osgi.util.tracker;version="1.4",
|
||||||
|
org.slf4j;resolution:=optional,
|
||||||
|
--- sisu-inject/org.eclipse.sisu.inject/build.properties~ 2015-02-25 14:46:42.392037463 +0100
|
||||||
|
+++ sisu-inject/org.eclipse.sisu.inject/build.properties 2015-02-25 14:44:56.626803789 +0100
|
||||||
|
@@ -17,5 +17,5 @@
|
||||||
|
.
|
||||||
|
|
||||||
|
# build with JSR250 v1.2 and workaround indirect Guava dependency via Guice 4
|
||||||
|
-extra.. = platform:/plugin/javax.annotation,platform:/plugin/com.google.guava
|
||||||
|
-additional.bundles = javax.annotation,com.google.guava
|
||||||
|
+extra.. = platform:/plugin/javax.annotation-api,platform:/plugin/com.google.guava
|
||||||
|
+additional.bundles = javax.annotation-api,com.google.guava
|
BIN
sisu-build.tar.xz
(Stored with Git LFS)
Normal file
BIN
sisu-build.tar.xz
(Stored with Git LFS)
Normal file
Binary file not shown.
205
sisu-ignored-tests.patch
Normal file
205
sisu-ignored-tests.patch
Normal file
@ -0,0 +1,205 @@
|
|||||||
|
--- sisu-inject/org.eclipse.sisu.inject.tests/src/org/eclipse/sisu/inject/LocatedBeansTest.java~ 2014-09-12 08:32:32.899725268 +0200
|
||||||
|
+++ sisu-inject/org.eclipse.sisu.inject.tests/src/org/eclipse/sisu/inject/LocatedBeansTest.java 2014-09-12 08:37:45.656099710 +0200
|
||||||
|
@@ -128,30 +128,6 @@
|
||||||
|
assertSame( a, itr2.next().getValue() );
|
||||||
|
}
|
||||||
|
|
||||||
|
- public void testUnrestrictedSearch()
|
||||||
|
- {
|
||||||
|
- final LocatedBeans<Annotation, Bean> beans = locate( Key.get( Bean.class ) );
|
||||||
|
- final Iterator<BeanEntry<Annotation, Bean>> itr = beans.iterator();
|
||||||
|
-
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( QualifyingStrategy.DEFAULT_QUALIFIER, itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( QualifyingStrategy.BLANK_QUALIFIER, itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( Names.named( "Named1" ), itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( Names.named( "Named2" ), itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( QualifyingStrategy.BLANK_QUALIFIER, itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( MarkedBeanImpl1.class.getAnnotation( Marked.class ), itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( Names.named( "Marked2" ), itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( Names.named( "Marked3" ), itr.next().getKey() );
|
||||||
|
- assertFalse( itr.hasNext() );
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
public void testNamedSearch()
|
||||||
|
{
|
||||||
|
final LocatedBeans<Named, Bean> beans = locate( Key.get( Bean.class, Named.class ) );
|
||||||
|
@@ -181,20 +156,6 @@
|
||||||
|
assertFalse( itr.hasNext() );
|
||||||
|
}
|
||||||
|
|
||||||
|
- public void testMarkedSearch()
|
||||||
|
- {
|
||||||
|
- final LocatedBeans<Marked, Bean> beans = locate( Key.get( Bean.class, Marked.class ) );
|
||||||
|
- final Iterator<BeanEntry<Marked, Bean>> itr = beans.iterator();
|
||||||
|
-
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( MarkedBeanImpl1.class.getAnnotation( Marked.class ), itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( MarkedBeanImpl2.class.getAnnotation( Marked.class ), itr.next().getKey() );
|
||||||
|
- assertTrue( itr.hasNext() );
|
||||||
|
- assertEquals( MarkedBeanProvider.class.getAnnotation( Marked.class ), itr.next().getKey() );
|
||||||
|
- assertFalse( itr.hasNext() );
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
public void testMarkedWithAttributesSearch()
|
||||||
|
{
|
||||||
|
final LocatedBeans<Marked, Bean> beans =
|
||||||
|
--- sisu-plexus/org.eclipse.sisu.plexus.tests/src/org/eclipse/sisu/plexus/PlexusXmlScannerTest.java~ 2014-08-24 01:48:47.000000000 +0200
|
||||||
|
+++ sisu-plexus/org.eclipse.sisu.plexus.tests/src/org/eclipse/sisu/plexus/PlexusXmlScannerTest.java 2015-02-04 07:06:49.696531924 +0100
|
||||||
|
@@ -159,83 +159,6 @@
|
||||||
|
new PlexusXmlScanner( null, plexusXml, null ).scan( space, true );
|
||||||
|
}
|
||||||
|
|
||||||
|
- @SuppressWarnings( "deprecation" )
|
||||||
|
- public void testComponents()
|
||||||
|
- {
|
||||||
|
- final ClassSpace space = new URLClassSpace( PlexusXmlScannerTest.class.getClassLoader() );
|
||||||
|
-
|
||||||
|
- final Map<String, PlexusBeanMetadata> metadata = new HashMap<String, PlexusBeanMetadata>();
|
||||||
|
- final PlexusXmlScanner scanner = new PlexusXmlScanner( null, null, metadata );
|
||||||
|
-
|
||||||
|
- final Map<Component, DeferredClass<?>> componentMap = scanner.scan( space, true );
|
||||||
|
-
|
||||||
|
- assertEquals( 6, componentMap.size() );
|
||||||
|
-
|
||||||
|
- final Component component1 =
|
||||||
|
- new ComponentImpl( DefaultBean.class, Hints.DEFAULT_HINT, Strategies.PER_LOOKUP, "" );
|
||||||
|
- assertEquals( DefaultBean.class, componentMap.get( component1 ).load() );
|
||||||
|
-
|
||||||
|
- final Component component2 = new ComponentImpl( Bean.class, "debug", Strategies.SINGLETON, "For debugging" );
|
||||||
|
- assertEquals( DebugBean.class, componentMap.get( component2 ).load() );
|
||||||
|
-
|
||||||
|
- final Component component3 = new ComponentImpl( Bean.class, Hints.DEFAULT_HINT, Strategies.SINGLETON, "" );
|
||||||
|
- assertEquals( AnotherBean.class, componentMap.get( component3 ).load() );
|
||||||
|
-
|
||||||
|
- final Component component4 = new ComponentImpl( Bean.class, "clone", Strategies.SINGLETON, "" );
|
||||||
|
- assertEquals( DefaultBean.class, componentMap.get( component4 ).load().getSuperclass() );
|
||||||
|
- final Class<?> proxy = CustomTestClassLoader.proxy( componentMap.get( component4 ).load() );
|
||||||
|
-
|
||||||
|
- try
|
||||||
|
- {
|
||||||
|
- assertNotNull( proxy.getMethod( "TestMe" ) );
|
||||||
|
- }
|
||||||
|
- catch ( final NoSuchMethodException e )
|
||||||
|
- {
|
||||||
|
- fail( "Proxied class is missing 'TestMe' method" );
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- final PlexusBeanMetadata metadata1 = metadata.get( DefaultBean.class.getName() );
|
||||||
|
-
|
||||||
|
- assertFalse( metadata1.isEmpty() );
|
||||||
|
-
|
||||||
|
- assertEquals( new ConfigurationImpl( "someFieldName", "<some-field-name><item>PRIMARY</item></some-field-name>" ),
|
||||||
|
- metadata1.getConfiguration( new NamedProperty( "someFieldName" ) ) );
|
||||||
|
-
|
||||||
|
- assertEquals( new ConfigurationImpl( "simple", "value" ),
|
||||||
|
- metadata1.getConfiguration( new NamedProperty( "simple" ) ) );
|
||||||
|
-
|
||||||
|
- assertEquals( new ConfigurationImpl( "value", "<value with=\"attribute\"></value>" ),
|
||||||
|
- metadata1.getConfiguration( new NamedProperty( "value" ) ) );
|
||||||
|
-
|
||||||
|
- assertEquals( new ConfigurationImpl( "emptyValue1", "<empty-value1 with=\"attribute\" />" ),
|
||||||
|
- metadata1.getConfiguration( new NamedProperty( "emptyValue1" ) ) );
|
||||||
|
-
|
||||||
|
- assertEquals( new ConfigurationImpl( "emptyValue2", "" ),
|
||||||
|
- metadata1.getConfiguration( new NamedProperty( "emptyValue2" ) ) );
|
||||||
|
-
|
||||||
|
- assertFalse( metadata1.isEmpty() );
|
||||||
|
-
|
||||||
|
- assertEquals( new RequirementImpl( Bean.class, true, "debug" ),
|
||||||
|
- metadata1.getRequirement( new NamedProperty( "bean", TypeLiteral.get( Bean.class ) ) ) );
|
||||||
|
-
|
||||||
|
- assertFalse( metadata1.isEmpty() );
|
||||||
|
-
|
||||||
|
- metadata1.getConfiguration( new NamedProperty( "foo" ) );
|
||||||
|
-
|
||||||
|
- assertEquals( new RequirementImpl( Bean.class, false, Hints.DEFAULT_HINT, "debug" ),
|
||||||
|
- metadata1.getRequirement( new NamedProperty( "beanMap" ) ) );
|
||||||
|
-
|
||||||
|
- assertFalse( metadata1.isEmpty() );
|
||||||
|
-
|
||||||
|
- assertEquals( new RequirementImpl( Bean.class, false ),
|
||||||
|
- metadata1.getRequirement( new NamedProperty( "beanField" ) ) );
|
||||||
|
-
|
||||||
|
- assertTrue( metadata1.isEmpty() );
|
||||||
|
-
|
||||||
|
- assertNotNull( metadata.get( AnotherBean.class.getName() ) );
|
||||||
|
- assertNull( metadata.get( DebugBean.class.getName() ) );
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
static class FixedClassSpace
|
||||||
|
implements ClassSpace
|
||||||
|
{
|
||||||
|
@@ -392,64 +315,4 @@
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- static final class CustomTestClassLoader
|
||||||
|
- extends ClassLoader
|
||||||
|
- {
|
||||||
|
- private static final String PROXY_MARKER = "$proxy";
|
||||||
|
-
|
||||||
|
- CustomTestClassLoader( final ClassLoader parent )
|
||||||
|
- {
|
||||||
|
- super( parent );
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- static Class<?> proxy( final Class<?> clazz )
|
||||||
|
- {
|
||||||
|
- try
|
||||||
|
- {
|
||||||
|
- return new CustomTestClassLoader( clazz.getClassLoader() ).loadClass( clazz.getName() + PROXY_MARKER );
|
||||||
|
- }
|
||||||
|
- catch ( final ClassNotFoundException e )
|
||||||
|
- {
|
||||||
|
- throw new TypeNotPresentException( clazz.getName(), e );
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- protected synchronized Class<?> loadClass( final String name, final boolean resolve )
|
||||||
|
- throws ClassNotFoundException
|
||||||
|
- {
|
||||||
|
- return super.loadClass( name, resolve );
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- protected Class<?> findClass( final String name )
|
||||||
|
- throws ClassNotFoundException
|
||||||
|
- {
|
||||||
|
- final String proxyName = name.replace( '.', '/' );
|
||||||
|
- final String superName = proxyName.substring( 0, proxyName.length() - PROXY_MARKER.length() );
|
||||||
|
-
|
||||||
|
- final ClassWriter cw = new ClassWriter( ClassWriter.COMPUTE_MAXS );
|
||||||
|
- cw.visit( Opcodes.V1_5, Modifier.PUBLIC | Modifier.FINAL, proxyName, null, superName, null );
|
||||||
|
- MethodVisitor mv = cw.visitMethod( Modifier.PUBLIC, "<init>", "()V", null, null );
|
||||||
|
-
|
||||||
|
- mv.visitCode();
|
||||||
|
- mv.visitVarInsn( Opcodes.ALOAD, 0 );
|
||||||
|
- mv.visitMethodInsn( Opcodes.INVOKESPECIAL, superName, "<init>", "()V", false );
|
||||||
|
- mv.visitInsn( Opcodes.RETURN );
|
||||||
|
- mv.visitMaxs( 0, 0 );
|
||||||
|
- mv.visitEnd();
|
||||||
|
-
|
||||||
|
- mv = cw.visitMethod( Modifier.PUBLIC, "TestMe", "()V", null, null );
|
||||||
|
-
|
||||||
|
- mv.visitCode();
|
||||||
|
- mv.visitInsn( Opcodes.RETURN );
|
||||||
|
- mv.visitMaxs( 0, 0 );
|
||||||
|
- mv.visitEnd();
|
||||||
|
- cw.visitEnd();
|
||||||
|
-
|
||||||
|
- final byte[] buf = cw.toByteArray();
|
||||||
|
-
|
||||||
|
- return defineClass( name, buf, 0, buf.length );
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
}
|
BIN
sisu-inject-0.3.5.tar.gz
(Stored with Git LFS)
Normal file
BIN
sisu-inject-0.3.5.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
72
sisu-inject.pom
Normal file
72
sisu-inject.pom
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>org.eclipse.sisu</groupId>
|
||||||
|
<artifactId>org.eclipse.sisu.inject</artifactId>
|
||||||
|
<version>@VERSION@</version>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.inject</groupId>
|
||||||
|
<artifactId>guice</artifactId>
|
||||||
|
<classifier>no_aop</classifier>
|
||||||
|
<version>4.0</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.inject</groupId>
|
||||||
|
<artifactId>javax.inject</artifactId>
|
||||||
|
<version>1</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.enterprise</groupId>
|
||||||
|
<artifactId>cdi-api</artifactId>
|
||||||
|
<version>1.1</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.annotation</groupId>
|
||||||
|
<artifactId>javax.annotation-api</artifactId>
|
||||||
|
<version>1.2</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.inject.extensions</groupId>
|
||||||
|
<artifactId>guice-servlet</artifactId>
|
||||||
|
<version>4.0</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>javax.servlet</groupId>
|
||||||
|
<artifactId>servlet-api</artifactId>
|
||||||
|
<version>2.5</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
<version>1.7.13</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.osgi</groupId>
|
||||||
|
<artifactId>osgi.core</artifactId>
|
||||||
|
<version>6.0.0</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>junit</groupId>
|
||||||
|
<artifactId>junit</artifactId>
|
||||||
|
<version>4.12</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.testng</groupId>
|
||||||
|
<artifactId>testng</artifactId>
|
||||||
|
<version>6.9.10</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<build>
|
||||||
|
<sourceDirectory>org.eclipse.sisu.inject/src</sourceDirectory>
|
||||||
|
</build>
|
||||||
|
</project>
|
84
sisu-no-dependency-on-glassfish-servlet-api.patch
Normal file
84
sisu-no-dependency-on-glassfish-servlet-api.patch
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
--- sisu-inject/org.eclipse.sisu.inject/src/org/eclipse/sisu/inject/Implementations.java
|
||||||
|
+++ sisu-inject/org.eclipse.sisu.inject/src/org/eclipse/sisu/inject/Implementations.java
|
||||||
|
@@ -38,17 +38,6 @@ final class Implementations
|
||||||
|
|
||||||
|
static
|
||||||
|
{
|
||||||
|
- boolean hasGuiceServlet;
|
||||||
|
- try
|
||||||
|
- {
|
||||||
|
- hasGuiceServlet = BindingTargetVisitor.class.isInstance( ServletFinder.THIS );
|
||||||
|
- }
|
||||||
|
- catch ( final LinkageError e )
|
||||||
|
- {
|
||||||
|
- hasGuiceServlet = false;
|
||||||
|
- }
|
||||||
|
- HAS_GUICE_SERVLET = hasGuiceServlet;
|
||||||
|
-
|
||||||
|
boolean hasJsr250Priority;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
@@ -65,8 +54,6 @@ final class Implementations
|
||||||
|
// Constants
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
- private static final boolean HAS_GUICE_SERVLET;
|
||||||
|
-
|
||||||
|
private static final boolean HAS_JSR250_PRIORITY;
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
@@ -106,7 +93,7 @@ final class Implementations
|
||||||
|
|
||||||
|
// peek behind servlet/filter extension bindings when checking priority, so we can order them by rank
|
||||||
|
final Class<?> implementation =
|
||||||
|
- binding.acceptTargetVisitor( HAS_GUICE_SERVLET && isPriority ? ServletFinder.THIS : ClassFinder.THIS );
|
||||||
|
+ binding.acceptTargetVisitor( ClassFinder.THIS );
|
||||||
|
|
||||||
|
T annotation = null;
|
||||||
|
if ( null != implementation )
|
||||||
|
@@ -215,45 +202,4 @@ final class Implementations
|
||||||
|
return binding.getPrivateElements().getInjector().getBinding( binding.getKey() ).acceptTargetVisitor( this );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-
|
||||||
|
- /**
|
||||||
|
- * {@link ClassFinder} that can also peek behind servlet/filter bindings.
|
||||||
|
- */
|
||||||
|
- static final class ServletFinder
|
||||||
|
- extends ClassFinder
|
||||||
|
- implements com.google.inject.servlet.ServletModuleTargetVisitor<Object, Class<?>>
|
||||||
|
- {
|
||||||
|
- // ----------------------------------------------------------------------
|
||||||
|
- // Constants
|
||||||
|
- // ----------------------------------------------------------------------
|
||||||
|
-
|
||||||
|
- @SuppressWarnings( "hiding" )
|
||||||
|
- static final BindingTargetVisitor<Object, Class<?>> THIS = new ServletFinder();
|
||||||
|
-
|
||||||
|
- // ----------------------------------------------------------------------
|
||||||
|
- // Public methods
|
||||||
|
- // ----------------------------------------------------------------------
|
||||||
|
-
|
||||||
|
- public Class<?> visit( final com.google.inject.servlet.InstanceFilterBinding binding )
|
||||||
|
- {
|
||||||
|
- return binding.getFilterInstance().getClass();
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- public Class<?> visit( final com.google.inject.servlet.InstanceServletBinding binding )
|
||||||
|
- {
|
||||||
|
- return binding.getServletInstance().getClass();
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- public Class<?> visit( final com.google.inject.servlet.LinkedFilterBinding binding )
|
||||||
|
- {
|
||||||
|
- // this assumes only one level of indirection: api-->impl
|
||||||
|
- return binding.getLinkedKey().getTypeLiteral().getRawType();
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- public Class<?> visit( final com.google.inject.servlet.LinkedServletBinding binding )
|
||||||
|
- {
|
||||||
|
- // this assumes only one level of indirection: api-->impl
|
||||||
|
- return binding.getLinkedKey().getTypeLiteral().getRawType();
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
}
|
11
sisu-osgi-api.patch
Normal file
11
sisu-osgi-api.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- sisu-plexus/org.eclipse.sisu.plexus/src/org/eclipse/sisu/plexus/PlexusBundlePlan.java~ 2015-09-13 20:15:37.000000000 +0200
|
||||||
|
+++ sisu-plexus/org.eclipse.sisu.plexus/src/org/eclipse/sisu/plexus/PlexusBundlePlan.java 2017-01-29 19:56:51.608151337 +0100
|
||||||
|
@@ -80,7 +80,7 @@
|
||||||
|
|
||||||
|
protected static boolean hasPlexusAnnotations( final Bundle bundle )
|
||||||
|
{
|
||||||
|
- final String imports = bundle.getHeaders().get( Constants.IMPORT_PACKAGE );
|
||||||
|
+ final String imports = bundle.getHeaders().get( Constants.IMPORT_PACKAGE ).toString();
|
||||||
|
return null != imports && imports.contains( "org.codehaus.plexus.component.annotations" );
|
||||||
|
}
|
||||||
|
|
BIN
sisu-plexus-0.3.5.tar.gz
(Stored with Git LFS)
Normal file
BIN
sisu-plexus-0.3.5.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
67
sisu-plexus.pom
Normal file
67
sisu-plexus.pom
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>org.eclipse.sisu</groupId>
|
||||||
|
<artifactId>org.eclipse.sisu.plexus</artifactId>
|
||||||
|
<version>@VERSION@</version>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>${project.groupId}</groupId>
|
||||||
|
<artifactId>org.eclipse.sisu.inject</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.codehaus.plexus</groupId>
|
||||||
|
<artifactId>plexus-classworlds</artifactId>
|
||||||
|
<version>2.5.2</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.codehaus.plexus</groupId>
|
||||||
|
<artifactId>plexus-component-annotations</artifactId>
|
||||||
|
<version>1.6</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.codehaus.plexus</groupId>
|
||||||
|
<artifactId>plexus-utils</artifactId>
|
||||||
|
<version>3.0.22</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.inject</groupId>
|
||||||
|
<artifactId>guice</artifactId>
|
||||||
|
<classifier>no_aop</classifier>
|
||||||
|
<version>4.0</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
<version>1.7.13</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.osgi</groupId>
|
||||||
|
<artifactId>osgi.core</artifactId>
|
||||||
|
<version>6.0.0</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>junit</groupId>
|
||||||
|
<artifactId>junit</artifactId>
|
||||||
|
<version>4.12</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<build>
|
||||||
|
<sourceDirectory>org.eclipse.sisu.plexus/src</sourceDirectory>
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<targetPath>META-INF/plexus</targetPath>
|
||||||
|
<filtering>false</filtering>
|
||||||
|
<directory>${basedir}/org.eclipse.sisu.plexus/META-INF/plexus</directory>
|
||||||
|
<includes>
|
||||||
|
<include>components.xml</include>
|
||||||
|
</includes>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
</build>
|
||||||
|
</project>
|
11
sisu-reproducible-index.patch
Normal file
11
sisu-reproducible-index.patch
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
--- sisu-0.3.5/sisu-inject/org.eclipse.sisu.inject/src/org/eclipse/sisu/space/AbstractSisuIndex.java 2023-09-05 15:00:59.314655718 +0200
|
||||||
|
+++ sisu-0.3.5/sisu-inject/org.eclipse.sisu.inject/src/org/eclipse/sisu/space/AbstractSisuIndex.java 2023-09-05 15:04:15.889547023 +0200
|
||||||
|
@@ -158,7 +158,7 @@
|
||||||
|
final BufferedWriter writer = new BufferedWriter( getWriter( INDEX_FOLDER + name ) );
|
||||||
|
try
|
||||||
|
{
|
||||||
|
- for ( final String line : table )
|
||||||
|
+ for ( final String line : new java.util.TreeSet<String>( table ) )
|
||||||
|
{
|
||||||
|
writer.write( line );
|
||||||
|
writer.newLine();
|
46
sisu.changes
Normal file
46
sisu.changes
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 5 13:09:17 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Added patch:
|
||||||
|
* sisu-reproducible-index.patch
|
||||||
|
+ Sort the classes by name in META-INF/sisu/javax.inject.Named
|
||||||
|
to make the output reproducible
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 27 13:46:14 UTC 2022 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Change to generate maven meta-data using the %%add_maven_depmap
|
||||||
|
* so that it can be built before the xmvn-tools
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Mar 20 19:45:31 UTC 2022 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Build with java source and target levels 8
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jan 18 07:16:24 UTC 2022 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Update to upstream version 0.3.5
|
||||||
|
- Changes of 0.3.5
|
||||||
|
* beo#539791 - Update cdi-api dependency to 1.2
|
||||||
|
* beo#575952 - Support turning off URLConnection caching for
|
||||||
|
container related resources
|
||||||
|
- Changes of 0.3.4
|
||||||
|
* beo#552642 - Support reproducible builds by sorting generated
|
||||||
|
javax.inject.Named index
|
||||||
|
* beo#546874 - Relax bytecode check in scanner so it can scan up
|
||||||
|
to and including Java14
|
||||||
|
- Added patch:
|
||||||
|
* sisu-no-dependency-on-glassfish-servlet-api.patch
|
||||||
|
+ remove dependency on glassfish-servlet-api
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Apr 1 23:11:49 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
||||||
|
|
||||||
|
- Use modern tar options.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 19 08:49:32 UTC 2019 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Initial packaging of sisu-inject and sisu-plexus 0.3.3
|
||||||
|
- Generate and customize ant build files
|
158
sisu.spec
Normal file
158
sisu.spec
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
#
|
||||||
|
# spec file for package sisu
|
||||||
|
#
|
||||||
|
# Copyright (c) 2023 SUSE LLC
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%global reltype release
|
||||||
|
Name: sisu
|
||||||
|
Version: 0.3.5
|
||||||
|
Release: 0
|
||||||
|
Summary: Eclipse dependency injection framework
|
||||||
|
# sisu is EPL-1.0, bundled asm is BSD
|
||||||
|
License: BSD-3-Clause AND EPL-1.0
|
||||||
|
Group: Development/Libraries/Java
|
||||||
|
URL: https://www.eclipse.org/sisu/
|
||||||
|
Source0: https://github.com/eclipse/sisu.inject/archive/refs/tags/releases/%{version}.tar.gz#/sisu-inject-%{version}.tar.gz
|
||||||
|
Source1: https://github.com/eclipse/sisu.plexus/archive/refs/tags/releases/%{version}.tar.gz#/sisu-plexus-%{version}.tar.gz
|
||||||
|
Source2: %{name}-build.tar.xz
|
||||||
|
Source100: %{name}-inject.pom
|
||||||
|
Source101: %{name}-plexus.pom
|
||||||
|
Patch0: %{name}-OSGi-import-guava.patch
|
||||||
|
Patch1: %{name}-no-dependency-on-glassfish-servlet-api.patch
|
||||||
|
Patch2: %{name}-ignored-tests.patch
|
||||||
|
Patch3: %{name}-osgi-api.patch
|
||||||
|
Patch4: %{name}-reproducible-index.patch
|
||||||
|
BuildRequires: ant
|
||||||
|
BuildRequires: atinject
|
||||||
|
BuildRequires: cdi-api
|
||||||
|
BuildRequires: fdupes
|
||||||
|
BuildRequires: glassfish-annotation-api
|
||||||
|
BuildRequires: google-guice
|
||||||
|
BuildRequires: guice-servlet
|
||||||
|
BuildRequires: javapackages-local
|
||||||
|
BuildRequires: junit
|
||||||
|
BuildRequires: osgi-core
|
||||||
|
BuildRequires: plexus-classworlds
|
||||||
|
BuildRequires: plexus-containers-component-annotations
|
||||||
|
BuildRequires: plexus-utils
|
||||||
|
BuildRequires: slf4j
|
||||||
|
BuildRequires: testng
|
||||||
|
BuildRequires: unzip
|
||||||
|
BuildRequires: xz
|
||||||
|
Provides: bundled(objectweb-asm)
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description
|
||||||
|
Java dependency injection framework with backward support for plexus and bean
|
||||||
|
style dependency injection.
|
||||||
|
|
||||||
|
%package inject
|
||||||
|
Summary: Sisu inject
|
||||||
|
Group: Development/Libraries/Java
|
||||||
|
Requires: mvn(javax.enterprise:cdi-api)
|
||||||
|
|
||||||
|
%description inject
|
||||||
|
This package contains %{summary}.
|
||||||
|
|
||||||
|
%package plexus
|
||||||
|
Summary: Sisu Plexus
|
||||||
|
Group: Development/Libraries/Java
|
||||||
|
Requires: mvn(org.codehaus.plexus:plexus-classworlds)
|
||||||
|
Requires: mvn(org.codehaus.plexus:plexus-component-annotations)
|
||||||
|
Requires: mvn(org.codehaus.plexus:plexus-utils)
|
||||||
|
Requires: mvn(org.eclipse.sisu:org.eclipse.sisu.inject) = %{version}
|
||||||
|
|
||||||
|
%description plexus
|
||||||
|
This package contains %{summary}.
|
||||||
|
|
||||||
|
%package javadoc
|
||||||
|
Summary: API documentation for Sisu
|
||||||
|
Group: Documentation/HTML
|
||||||
|
|
||||||
|
%description javadoc
|
||||||
|
This package contains %{summary}.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q -c -T
|
||||||
|
tar xf %{SOURCE0} && mv sisu.inject-releases-%{version} sisu-inject
|
||||||
|
tar xf %{SOURCE1} && mv sisu.plexus-releases-%{version} sisu-plexus
|
||||||
|
tar xf %{SOURCE2}
|
||||||
|
|
||||||
|
cp %{SOURCE100} sisu-inject/pom.xml
|
||||||
|
cp %{SOURCE101} sisu-plexus/pom.xml
|
||||||
|
|
||||||
|
%patch0
|
||||||
|
%patch1
|
||||||
|
%patch2
|
||||||
|
%patch3
|
||||||
|
%patch4 -p1
|
||||||
|
|
||||||
|
%pom_remove_dep :servlet-api sisu-inject
|
||||||
|
|
||||||
|
for i in inject plexus; do
|
||||||
|
%pom_xpath_set -r /pom:project/pom:version %{version} %{name}-${i}
|
||||||
|
%pom_remove_dep :::provided: %{name}-${i}
|
||||||
|
%pom_xpath_remove pom:project/pom:build %{name}-${i}
|
||||||
|
done
|
||||||
|
%pom_change_dep :org.eclipse.sisu.inject org.eclipse.sisu:org.eclipse.sisu.inject:%{version} %{name}-plexus
|
||||||
|
|
||||||
|
%build
|
||||||
|
mkdir -p lib
|
||||||
|
build-jar-repository -s lib \
|
||||||
|
glassfish-annotation-api \
|
||||||
|
google-guice-no_aop \
|
||||||
|
guice/guice-servlet \
|
||||||
|
javax.enterprise.inject/cdi-api \
|
||||||
|
javax.inject/atinject \
|
||||||
|
junit \
|
||||||
|
osgi-core/osgi.core \
|
||||||
|
plexus/utils \
|
||||||
|
plexus/classworlds \
|
||||||
|
plexus-containers/plexus-component-annotations \
|
||||||
|
slf4j/api \
|
||||||
|
testng
|
||||||
|
%{ant} package javadoc
|
||||||
|
|
||||||
|
%install
|
||||||
|
# jar
|
||||||
|
install -dm 0755 %{buildroot}%{_javadir}
|
||||||
|
install -pm 0644 %{name}-inject/target/org.eclipse.sisu.inject-%{version}.jar %{buildroot}%{_javadir}/org.eclipse.sisu.inject.jar
|
||||||
|
install -pm 0644 %{name}-plexus/target/org.eclipse.sisu.plexus-%{version}.jar %{buildroot}%{_javadir}/org.eclipse.sisu.plexus.jar
|
||||||
|
|
||||||
|
# pom
|
||||||
|
install -dm 0755 %{buildroot}%{_mavenpomdir}
|
||||||
|
install -pm 0644 %{name}-inject/pom.xml %{buildroot}%{_mavenpomdir}/org.eclipse.sisu.inject.pom
|
||||||
|
%add_maven_depmap org.eclipse.sisu.inject.pom org.eclipse.sisu.inject.jar -f inject
|
||||||
|
install -pm 0644 %{name}-plexus/pom.xml %{buildroot}%{_mavenpomdir}/org.eclipse.sisu.plexus.pom
|
||||||
|
%add_maven_depmap org.eclipse.sisu.plexus.pom org.eclipse.sisu.plexus.jar -f plexus -a org.sonatype.sisu:sisu-inject-plexus
|
||||||
|
|
||||||
|
# javadoc
|
||||||
|
for i in inject plexus; do
|
||||||
|
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}/%{name}-${i}
|
||||||
|
cp -pr %{name}-${i}/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}/%{name}-${i}/
|
||||||
|
done
|
||||||
|
%fdupes -s %{buildroot}%{_javadocdir}
|
||||||
|
|
||||||
|
%files inject -f .mfiles-inject
|
||||||
|
%license sisu-inject/LICENSE.txt
|
||||||
|
|
||||||
|
%files plexus -f .mfiles-plexus
|
||||||
|
|
||||||
|
%files javadoc
|
||||||
|
%license sisu-inject/LICENSE.txt
|
||||||
|
%{_javadocdir}/%{name}
|
||||||
|
|
||||||
|
%changelog
|
Loading…
Reference in New Issue
Block a user