本文整理了Java中org.apache.polygene.api.structure.Module.findServices()
方法的一些代码示例,展示了Module.findServices()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Module.findServices()
方法的具体详情如下:
包路径:org.apache.polygene.api.structure.Module
类名称:Module
方法名:findServices
暂无
代码示例来源:origin: apache/attic-polygene-java
@SuppressWarnings( "unchecked" )
ServiceReference locateService( Application anApplication )
{
if( layerName != null )
{
Module module = anApplication.findModule( layerName, moduleName );
return module.findServices( serviceType )
.filter( ref -> ref.identity().toString().equals( serviceId ) )
.findFirst().orElse( null );
}
return null;
}
}
代码示例来源:origin: apache/attic-polygene-java
protected Stream<ServiceReference<Object>> getServiceReferences( final InjectionContext context )
{
if( serviceQualifier == null )
{
return context.module().instance().findServices( serviceType );
}
else
{
return context.module().instance().findServices( serviceType ).filter( serviceQualifier );
}
}
}
代码示例来源:origin: apache/attic-polygene-java
public boolean isAvailable()
{
Class<?> mainType = serviceDescriptor.types().findFirst().orElse( null );
ServiceReference<?> first = module.findServices( mainType )
.filter( withId( serviceDescriptor.identity().toString() ) )
.findFirst().orElse( null );
return first != null && first.isAvailable();
}
代码示例来源:origin: apache/attic-polygene-java
public boolean isActive()
{
Class<?> mainType = serviceDescriptor.types().findFirst().orElse( null );
ServiceReference<?> first = module.findServices( mainType )
.filter( withId( serviceDescriptor.identity().toString() ) )
.findFirst().orElse( null );
return first != null && first.isActive();
}
代码示例来源:origin: org.apache.polygene.libraries/org.apache.polygene.library.jmx
public boolean isActive()
{
Class<?> mainType = serviceDescriptor.types().findFirst().orElse( null );
ServiceReference<?> first = module.findServices( mainType )
.filter( withId( serviceDescriptor.identity().toString() ) )
.findFirst().orElse( null );
return first != null && first.isActive();
}
代码示例来源:origin: org.apache.polygene.libraries/org.apache.polygene.library.jmx
public boolean isAvailable()
{
Class<?> mainType = serviceDescriptor.types().findFirst().orElse( null );
ServiceReference<?> first = module.findServices( mainType )
.filter( withId( serviceDescriptor.identity().toString() ) )
.findFirst().orElse( null );
return first != null && first.isAvailable();
}
代码示例来源:origin: apache/attic-polygene-java
public String restart()
{
ServiceReference<?> serviceRef = module.findServices( serviceDescriptor.types()
.findFirst().orElse( null ) )
.filter( withId( serviceDescriptor.identity().toString() ) )
.findFirst().orElse( null );
if( serviceRef != null )
{
try
{
( (Activation) serviceRef ).passivate();
( (Activation) serviceRef ).activate();
return "Restarted service";
}
catch( Exception e )
{
return "Could not restart service:" + e.getMessage();
}
}
else
{
return "Could not find service";
}
}
}
代码示例来源:origin: apache/attic-polygene-java
protected ServiceReference<Object> getServiceReference( InjectionContext context )
{
try
{
if( serviceQualifier == null )
{
return context.module().instance().findService( serviceType );
}
else
{
return context.module().instance().findServices( serviceType )
.filter( serviceQualifier ).findFirst().orElse( null );
}
}
catch( NoSuchServiceTypeException e )
{
return null;
}
}
代码示例来源:origin: org.apache.polygene.libraries/org.apache.polygene.library.jmx
public String restart()
{
ServiceReference<?> serviceRef = module.findServices( serviceDescriptor.types()
.findFirst().orElse( null ) )
.filter( withId( serviceDescriptor.identity().toString() ) )
.findFirst().orElse( null );
if( serviceRef != null )
{
try
{
( (Activation) serviceRef ).passivate();
( (Activation) serviceRef ).activate();
return "Restarted service";
}
catch( Exception e )
{
return "Could not restart service:" + e.getMessage();
}
}
else
{
return "Could not find service";
}
}
}
代码示例来源:origin: apache/attic-polygene-java
@Override
public void registerServices()
throws Exception
{
BundleContext context = descriptor.metaInfo( BundleContext.class );
if( context == null )
{
return;
}
module.findServices( descriptor.types().findFirst().orElse( null ) ).forEach(
ref -> {
if( ref.identity().equals( identity().get() ) )
{
Stream<? extends Type> classesSet = descriptor.types();
Dictionary properties = descriptor.metaInfo( Dictionary.class );
String[] clazzes = fetchInterfacesImplemented( classesSet );
registration = context.registerService( clazzes, ref.get(), properties );
}
}
);
}
代码示例来源:origin: apache/attic-polygene-java
return module.findServices( Deserializer.class )
.filter( ref ->
代码示例来源:origin: org.apache.polygene.core/org.apache.polygene.core.api
return module.findServices( Deserializer.class )
.filter( ref ->
代码示例来源:origin: apache/attic-polygene-java
@Test
public void servicesPluralDeclaration()
throws ActivationException, AssemblyException
{
Module module = new SingletonAssembler()
{
@Override
public void assemble( ModuleAssembly module )
throws AssemblyException
{
module.services( SomeOtherFoo.class, BasicFoo.class );
}
}.module();
assertEquals( 1, module.findServices( SomeOtherFoo.class ).count() );
assertEquals( 2, module.findServices( BasicFoo.class ).count() );
assertEquals( 2, module.findServices( Foo.class ).count() );
assertEquals( CATHEDRAL, module.findService( SomeOtherFoo.class ).get().bar() );
// Exact type match first even if it is assembled _after_ an assignable, the assignable comes after
Iterator<ServiceReference<BasicFoo>> basicFoos = module.findServices( BasicFoo.class ).iterator();
assertEquals( BAZAR, basicFoos.next().get().bar() );
assertEquals( CATHEDRAL, basicFoos.next().get().bar() );
assertFalse( basicFoos.hasNext() );
// No exact type match, all assembled are assignable, follows assembly Type order
Iterator<ServiceReference<Foo>> foos = module.findServices( Foo.class ).iterator();
assertEquals( CATHEDRAL, foos.next().get().bar() );
assertEquals( BAZAR, foos.next().get().bar() );
assertFalse( foos.hasNext() );
}
代码示例来源:origin: apache/attic-polygene-java
assembly.module().findServices( DataAccess.class ).forEach(
service ->
assembly.module().findServices( DataAccess.class ).forEach(
service ->
代码示例来源:origin: apache/attic-polygene-java
@Test
public void givenSuccessPassivationWhenPassivatingExpectNoExceptions()
throws Throwable
{
SingletonAssembler assembly = new SingletonAssembler()
{
public void assemble( ModuleAssembly module )
throws AssemblyException
{
module.addServices( DataAccessService.class ).withActivators( PassivationSuccessActivator.class );
module.addServices( DataAccessService.class ).withActivators( PassivationSuccessActivator.class );
}
};
assembly.module().findServices( DataAccess.class ).forEach(
service ->
{
assertTrue( "Service should not be Active before accessed", !service.isActive() );
assertTrue( service.get().data().activated );
assertTrue( "Service should be Active after access.", service.isActive() );
}
);
assembly.application().passivate();
}
代码示例来源:origin: apache/attic-polygene-java
@Test(expected = PassivationException.class)
public void givenMultipleFailingPassivationWhenPassivatingExpectPassivationExceptionToBubbleUp()
throws Exception
{
SingletonAssembler assembly = new SingletonAssembler()
{
public void assemble( ModuleAssembly module )
throws AssemblyException
{
module.addServices( DataAccessService.class ).withActivators( PassivationFailureActivator.class );
module.addServices( DataAccessService.class ).withActivators( PassivationFailureActivator.class );
}
};
assembly.module().findServices( DataAccess.class ).forEach(
service ->
{
assertTrue( "Service should not be Active before accessed", !service.isActive() );
assertTrue( service.get().data().activated );
assertTrue( "Service should be Active after access.", service.isActive() );
}
);
assembly.application().passivate();
}
内容来源于网络,如有侵权,请联系作者删除!