I'm using a custom version of Peter Kriens aQute.configurable.Configurable. Initially, I was using it only for unit testing but now when I need to run DS components in a plain java application (non OSGi).
Regards, João Assunção Email: joao.assun...@exploitsys.com Mobile: +351 916968984 Phone: +351 211933149 Web: www.exploitsys.com On Fri, Apr 27, 2018 at 12:11 PM, Tim Ward via osgi-dev < osgi-dev@mail.osgi.org> wrote: > Have you tried using the OSGi converter? > > You can fill a map with properties and then just: > > Converters.standardConverter().convert(map).to(MessagingEndpoint.class) > > This will honour the defaults from the annotation - see 707.4.4.4.5 of the > compendium. The closest link I can give is https://osgi.org/ > specification/osgi.cmpn/7.0.0/util.converter.html#util.converter-maps > > > Tim > > On 27 Apr 2018, at 12:06, Christian Schneider via osgi-dev < > osgi-dev@mail.osgi.org> wrote: > > I am using DS components with type safe configs like below. > My innermost tests should run outside of OSGi. So I am using Mockito > to inject dependencies into my component. > > For configs I use > > @Mock > MessagingEndpoint; > > In the test I then define behaviour like: > > when(config.endpoint()).thenReturn("http://localhost:8082"); > > > This works but you do not get the default values. So you have to set all > config attributes. > > Is there a better way to simulate such configs? > > Christian > > ----- > @ObjectClassDefinition(name = "My config") > public @interface MessagingEndpoint { > > @AttributeDefinition > String endpoint() default "http://localhost:8176"; > > @AttributeDefinition > int connectTimeout() default 5000; > } > > -- > -- > Christian Schneider > http://www.liquid-reality.de > > Computer Scientist > http://www.adobe.com > > _______________________________________________ > OSGi Developer Mail List > osgi-dev@mail.osgi.org > https://mail.osgi.org/mailman/listinfo/osgi-dev > > > > _______________________________________________ > OSGi Developer Mail List > osgi-dev@mail.osgi.org > https://mail.osgi.org/mailman/listinfo/osgi-dev >
_______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org https://mail.osgi.org/mailman/listinfo/osgi-dev