use of joynr.types.Version in project joynr by bmwcarit.
the class CapabilitiesUtilsTest method testCreateNewGlobalDiscoveryEntry.
@Test
public void testCreateNewGlobalDiscoveryEntry() {
Version version = new Version(0, 0);
String domain = "domain";
String interfaceName = "interfaceName";
String participantId = "participantId";
String publicKeyId = "publicKeyId";
Address mqttAddress = new MqttAddress("tcp://broker:1883", "topic");
ProviderQos providerQos = new ProviderQos();
GlobalDiscoveryEntry result = CapabilityUtils.newGlobalDiscoveryEntry(version, domain, interfaceName, participantId, providerQos, 0L, 0L, publicKeyId, mqttAddress);
assertNotNull(result);
assertEquals(version, result.getProviderVersion());
assertEquals(domain, result.getDomain());
assertEquals(interfaceName, result.getInterfaceName());
assertEquals(participantId, result.getParticipantId());
assertEquals(providerQos, result.getQos());
assertEquals((Long) 0L, result.getLastSeenDateMs());
assertEquals((Long) 0L, result.getExpiryDateMs());
assertEquals(publicKeyId, result.getPublicKeyId());
assertEquals("{\"_typeName\":\"joynr.system.RoutingTypes.MqttAddress\",\"brokerUri\":\"tcp://broker:1883\",\"topic\":\"topic\"}", result.getAddress());
}
use of joynr.types.Version in project joynr by bmwcarit.
the class CapabilitiesUtilsTest method createCollectionOfDiscoveryEntriesWithMetaInfo.
private Collection<DiscoveryEntryWithMetaInfo> createCollectionOfDiscoveryEntriesWithMetaInfo() {
Collection<DiscoveryEntryWithMetaInfo> discoveryEntries = new ArrayList<>(2);
discoveryEntries.add(new DiscoveryEntryWithMetaInfo(new Version(42, 23), "testDomain1", "testInterfaceName", "testParticipantId1", new ProviderQos(), 4711l, 4712l, "testPublicKeyId1", true));
discoveryEntries.add(new DiscoveryEntryWithMetaInfo(new Version(42, 23), "testDomain2", "testInterfaceName", "testParticipantId2", new ProviderQos(), 4721l, 4722l, "testPublicKeyId2", false));
return discoveryEntries;
}
use of joynr.types.Version in project joynr by bmwcarit.
the class StaticCapabilitiesProvisioningTest method createDiscoveryEntries.
private Set<DiscoveryEntry> createDiscoveryEntries(String domain, String... interfaceNames) {
Set<DiscoveryEntry> discoveryEntries = new HashSet<DiscoveryEntry>();
String participantId = "particpantId";
ProviderQos qos = new ProviderQos();
Long lastSeenDateMs = 0L;
Long expiryDateMs = 0L;
String publicKeyId = "publicKeyId";
Address address = new MqttAddress("brokerUri", "topic");
for (String interfaceName : interfaceNames) {
GlobalDiscoveryEntry entry = CapabilityUtils.newGlobalDiscoveryEntry(new Version(0, 1), domain, interfaceName, participantId, qos, lastSeenDateMs, expiryDateMs, publicKeyId, address);
discoveryEntries.add(entry);
}
return discoveryEntries;
}
use of joynr.types.Version in project joynr by bmwcarit.
the class ServersUtil method createJsonFor.
private static String createJsonFor(String directoriesUrl) throws JsonProcessingException {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.enableDefaultTypingAsProperty(DefaultTyping.JAVA_LANG_OBJECT, "_typeName");
setObjectMapperOnCapabilitiesUtils(objectMapper);
String channelId = "discoverydirectory_channelid";
String participantId = "capabilitiesdirectory_participantid";
GlobalDiscoveryEntry discoveryEntry = CapabilityUtils.newGlobalDiscoveryEntry(new Version(0, 1), "io.joynr", GlobalCapabilitiesDirectory.INTERFACE_NAME, participantId, new ProviderQos(), System.currentTimeMillis(), Long.MAX_VALUE, "", new ChannelAddress(directoriesUrl, channelId));
String accessParticipantId = "domainaccesscontroller_participantid";
GlobalDiscoveryEntry accessControlEntry = CapabilityUtils.newGlobalDiscoveryEntry(new Version(0, 1), "io.joynr", GlobalDomainAccessController.INTERFACE_NAME, accessParticipantId, new ProviderQos(), System.currentTimeMillis(), Long.MAX_VALUE, "", new InProcessAddress());
List<DiscoveryEntry> entries = new ArrayList<>();
entries.add(discoveryEntry);
entries.add(accessControlEntry);
return objectMapper.writeValueAsString(entries);
}
use of joynr.types.Version in project joynr by bmwcarit.
the class RequestInterpreter method invokeMethod.
public Object invokeMethod(RequestCaller requestCaller, OneWayRequest request) {
// A method is identified by its defining request caller, its name and the types of its arguments
MethodSignature methodSignature = new MethodSignature(requestCaller, request.getMethodName(), request.getParamDatatypes());
ensureMethodMetaInformationPresent(requestCaller, request, methodSignature);
Method method = methodSignatureToMethodMap.get(methodSignature);
Object[] params = null;
try {
if (method.getParameterTypes().length > 0) {
// method with parameters
params = request.getParams();
}
joynrMessageScope.activate();
setContext(requestCaller, request);
logger.trace("invoke provider method {}({})", method.getName(), params == null ? "" : params);
return requestCaller.invoke(method, params);
} catch (IllegalAccessException e) {
logger.error("RequestInterpreter: Received an RPC invocation for a non public method {}", request);
JoynrVersion joynrVersion = AnnotationUtil.getAnnotation(requestCaller.getProxy().getClass(), JoynrVersion.class);
throw new MethodInvocationException(e, new Version(joynrVersion.major(), joynrVersion.minor()));
} catch (InvocationTargetException e) {
logger.debug("invokeMethod error", e);
Throwable cause = e.getCause();
logger.error("RequestInterpreter: Could not perform an RPC invocation: {}", cause == null ? e.toString() : cause.getMessage());
throw new ProviderRuntimeException(cause == null ? e.toString() : cause.toString());
} finally {
requestCaller.removeContext();
joynrMessageScope.deactivate();
}
}
Aggregations