Реализация клиента Java для связи NGSI и ContextBroker

Чтобы не изобретать велосипед, я ищу какую-нибудь существующую библиотеку для подключения к Orion Context Broker из кода Java.

Я обнаружил, что в fiware. org есть опубликованный пример кода, но он мне не нравится, так как он не скрывает использование необработанного XML.

Я также нашел код на github

Некоторые люди, кажется, поработали над этим, но я не нашел исходников.

Есть ли какая-то открытая библиотека, ставшая популярным справочником по ней? быть API чистым и простым в использовании и скрывать низкоуровневые вещи? (разбор XML, связь NGSI, REST и т. д.)


person José Miguel Martínez    schedule 02.06.2015    source источник


Ответы (1)


Мы создали клиентскую библиотеку NGSI V1 (только JSON) для Fiware- Проект Цефей.

В вашем pom.xml:

<dependency>
    <groupId>com.orange.cepheus</groupId>
    <artifactId>cepheus-ngsi</artifactId>
    <version>4.4.3-SNAPSHOT</version>
</dependency>

В вашем коде:

@Autowired
NgsiClient ngsiClient;

...

// Prepare UpdateContext  
UpdateContext updateContext = new UpdateContext(UpdateAction.UPDATE);
ContextElement contextElement = new ContextElement();
contextElement.setEntityId(new EntityId("Room1", "Room", false));
ContextAttribute attr = new ContextAttribute("temp", "double", "20");
contextElement.setContextAttributeList(Collections.singletonList(attr);
updateContext.setContextElements(Collections.singletonList(contextElement));

// Synchronous call
ngsiClient.updateContext("http://broker:port", null, updateContext).get();

// Asynchronous call
ngsiClient.updateContext("http://broker:port", null, updateContext).addCallback(
      updateContextResponse -> { /* success response */ },
      throwable -> { /* error response */ });

Эта библиотека все еще находится в стадии разработки (доступна как SNAPSHOT только в репозитории Sonatype) и еще не считается стабильной, но полностью протестирована.

В нем отсутствует поддержка многих запросов NGSI9, но если вы в основном используете NGSI10, вы должны быть охвачены.

person Marc    schedule 14.09.2015