in function-apps/Point-Of-Transaction/src/main/java/org/inventory/hub/POT.java [26:48]
public void sell(@TimerTrigger(name = "timerInfo", schedule = "*/30 * * * * *")
String timerInfo,
@EventHubOutput(name = "data", eventHubName = "TRANSACTIONS_EVENT_HUB_NAME",
connection = "TRANSACTIONS_EVENT_HUB_CONNECTION_STRING")
OutputBinding<String> Output,
@CosmosDBInput(name = "documents", databaseName = "%PRODUCT_ITEMS_COSMOSDB_DBNAME%",
collectionName = "%PRODUCT_ITEMS_COSMOSDB_COLLECTION_NAME%",
connectionStringSetting = "PRODUCT_ITEMS_COSMOSDB_CONNECTION_STRING",
sqlQuery = "SELECT * FROM root r") String documents,
final ExecutionContext executionContext) {
final Gson gson = new GsonBuilder().create();
List<ProductItem> productItems = gson.fromJson(documents, new TypeToken<ArrayList<ProductItem>>(){}.getType());
executionContext.getLogger().info(String.format("Found %d documents", productItems.size()));
final POT.TransactionEvent transactionEvent = productItems.size() > 0 ? new POT.TransactionEvent(10, productItems) : new POT.TransactionEvent(10);
executionContext.getLogger().info("Timer trigger input: " + timerInfo);
executionContext.getLogger().info(transactionEvent.description);
executionContext.getLogger().info("Sending: " + gson.toJson(transactionEvent));
Output.setValue(gson.toJson(transactionEvent));
}