The plugin manager is intended to be the primary first interaction for any plugin with the software development kit.
Golang Plugin Manager
package main
import{
"errors"
"github.com/usace/cc-go-sdk"
}
func main(){
pm, err := cc.InitPluginManager()
if err!=nil{
log.Fatal("unable to initialize the cloud-compute plugin manager")
}
payload := pm.GetPayload()
}
CODE
Java Plugin Manager
package company.division.cc.plugin.PluginName;
import usace.cc.plugin.*;
public class PluginName{
public static void main(String[] args){
PluginManager pm = PluginManager.getInstance();//plugin manager is a singleton in java.
Payload payload = pm.getPayload();
}
}
CODE
DotNet PluginManager
// See https://aka.ms/new-console-template for more information
using Usace.CC.Plugin;
PluginManager pm = await PluginManager.CreateAsync();//plugin manager is a singleton in DotNet but it has async methods so the instance is fetched async.
Payload payload = pm.Payload;
CODE
The plugin manager simplifies access to the various capabilities of the plugin SDK.
It supports:
- Consistent Error Logging
- Consistent Messaging
- Consistent Status Reporting
- Provides access to a Payload