Configuration
Builder API
Section titled “Builder API”var config = new PlugwerkConfig.Builder( "https://myplugwerk.host", "acme-corp") .apiKey("pwk_...") .build();val config = PlugwerkConfig.Builder( "https://myplugwerk.host", "acme-corp") .apiKey("pwk_...") .build()Extension Points
Section titled “Extension Points”The SDK provides these PF4J extension points:
| Extension Point | Purpose |
|---|---|
PlugwerkCatalog | Search and browse plugins |
PlugwerkInstaller | Download, verify, and install plugins |
PlugwerkUpdateChecker | Check for available updates |
PlugwerkMarketplace | Facade combining all three |
Access the SDK through the PlugwerkMarketplace facade:
var marketplace = pluginManager .getExtensions(PlugwerkMarketplace.class) .getFirst();
// Browse catalogvar plugins = marketplace.catalog().listPlugins();
// Searchvar results = marketplace.catalog() .searchPlugins(new SearchCriteria("crm", null, null));
// Installvar result = marketplace.installer() .install("com.acme.crm-connector", "3.0.0");
// Check for updatesvar installed = Map.of("com.acme.crm-connector", "2.0.0");var updates = marketplace.updateChecker() .checkForUpdates(installed);val marketplace = pluginManager .getExtensions(PlugwerkMarketplace::class.java) .first()
// Browse catalogval plugins = marketplace.catalog().listPlugins()
// Searchval results = marketplace.catalog() .searchPlugins(SearchCriteria(query = "crm"))
// Installval result = marketplace.installer() .install("com.acme.crm-connector", "3.0.0")
// Check for updatesval installed = mapOf("com.acme.crm-connector" to "2.0.0")val updates = marketplace.updateChecker() .checkForUpdates(installed)