/** * Returns a new {@code ProtocolAdapterErrorRegistry}. * * @return the error registry. */ public static ProtocolAdapterErrorRegistry newInstance() { final Map<String, JsonParsable<DittoRuntimeException>> parseStrategies = new HashMap<>(); final ThingErrorRegistry thingErrorRegistry = ThingErrorRegistry.newInstance(); thingErrorRegistry.getTypes() .forEach(type -> parseStrategies.put(type, thingErrorRegistry)); final MessageErrorRegistry messageErrorRegistry = MessageErrorRegistry.newInstance(); messageErrorRegistry.getTypes() .forEach(type -> parseStrategies.put(type, messageErrorRegistry)); // Protocol Adapter exceptions: parseStrategies.put(UnknownCommandException.ERROR_CODE, UnknownCommandException::fromJson); parseStrategies.put(UnknownCommandResponseException.ERROR_CODE, UnknownCommandResponseException::fromJson); parseStrategies.put(UnknownEventException.ERROR_CODE, UnknownEventException::fromJson); parseStrategies.put(UnknownPathException.ERROR_CODE, UnknownPathException::fromJson); parseStrategies.put(UnknownSignalException.ERROR_CODE, UnknownSignalException::fromJson); parseStrategies.put(UnknownTopicPathException.ERROR_CODE, UnknownTopicPathException::fromJson); return new ProtocolAdapterErrorRegistry(parseStrategies); } }
/** * Creates a new {@code DittoProtocolAdapter} instance with the given header translator. * * @param headerTranslator translator between external and Ditto headers. */ public static DittoProtocolAdapter of(final HeaderTranslator headerTranslator) { return new DittoProtocolAdapter(ProtocolAdapterErrorRegistry.newInstance(), requireNonNull(headerTranslator)); }
/** * Returns a new {@code ProtocolAdapterErrorRegistry}. * * @return the error registry. */ public static ProtocolAdapterErrorRegistry newInstance() { final Map<String, JsonParsable<DittoRuntimeException>> parseStrategies = new HashMap<>(); final ThingErrorRegistry thingErrorRegistry = ThingErrorRegistry.newInstance(); thingErrorRegistry.getTypes() .forEach(type -> parseStrategies.put(type, thingErrorRegistry)); final MessageErrorRegistry messageErrorRegistry = MessageErrorRegistry.newInstance(); messageErrorRegistry.getTypes() .forEach(type -> parseStrategies.put(type, messageErrorRegistry)); // Protocol Adapter exceptions: parseStrategies.put(UnknownCommandException.ERROR_CODE, UnknownCommandException::fromJson); parseStrategies.put(UnknownCommandResponseException.ERROR_CODE, UnknownCommandResponseException::fromJson); parseStrategies.put(UnknownEventException.ERROR_CODE, UnknownEventException::fromJson); parseStrategies.put(UnknownPathException.ERROR_CODE, UnknownPathException::fromJson); parseStrategies.put(UnknownSignalException.ERROR_CODE, UnknownSignalException::fromJson); parseStrategies.put(UnknownTopicPathException.ERROR_CODE, UnknownTopicPathException::fromJson); return new ProtocolAdapterErrorRegistry(parseStrategies); } }
/** * Creates a new {@code DittoProtocolAdapter} instance. * * @return the instance. */ public static DittoProtocolAdapter newInstance() { return new DittoProtocolAdapter(ProtocolAdapterErrorRegistry.newInstance(), headerTranslator()); }
/** * Creates a new {@code DittoProtocolAdapter} instance with the given header translator. * * @param headerTranslator translator between external and Ditto headers. */ public static DittoProtocolAdapter of(final HeaderTranslator headerTranslator) { return new DittoProtocolAdapter(ProtocolAdapterErrorRegistry.newInstance(), requireNonNull(headerTranslator)); }
/** * Creates a new {@code DittoProtocolAdapter} instance. * * @return the instance. */ public static DittoProtocolAdapter newInstance() { return new DittoProtocolAdapter(ProtocolAdapterErrorRegistry.newInstance(), headerTranslator()); }