public static void main()

in java-example-extension/src/main/java/example/ExtensionMain.java [13:45]


    public static void main(String[] args) {
        // Register the extension for "INVOKE" and "SHUTDOWN" events
        final String extension = ExtensionClient.registerExtension();
        System.out.println("Extension registration complete, extensionID: " + extension);

        while (true) {
            try {
                String response = ExtensionClient.getNext(extension);
                if (response != null && !response.isEmpty()) {
                    JsonObject eventJsonObject = new Gson().fromJson(response, JsonObject.class);
                    JsonElement eventTypeElement = eventJsonObject.get("eventType");

                    // Depending upon event type perform corresponding actions
                    if (eventTypeElement != null) {
                        final String eventType = eventTypeElement.getAsString();
                        switch (eventTypeElement.getAsString()) {
                            case "INVOKE":
                                handleInvoke(response);
                                break;
                            case "SHUTDOWN":
                                handleShutDown();
                                break;
                            default:
                                System.err.println("Invalid event type received " + eventType);
                        }
                    }
                }
            } catch (Exception e) {
                System.out.println("Error while processing extension -" + e.getMessage());
                e.printStackTrace();
            }
        }
    }