This example is based on the code in the ConnectionWorkflow Java class from the com.vmware.vcloud.suite.samples.workflow package. The source file is located in the following vCloud Suite SDK for Java directory: VMware-vCloud-Suite-SDK-Java/client/samples/java.
This example uses the steps that are described in the Create a vCloud Suite Session with a SAML Token procedure.
import com.vmware.cis.tagging.Tag; import com.vmware.vapi.bindings.StubConfiguration; import com.vmware.vapi.bindings.StubFactory; import com.vmware.vapi.cis.authn.ProtocolFactory; import com.vmware.vapi.protocol.ProtocolConnection; import com.vmware.vapi.cis.authn.SecurityContextFactory; import com.vmware.vapi.core.ExecutionContext.SecurityContext; // Create the protocol connection object to access the vCloud Suite endpoint. ProtocolFactory protocolFactory = new ProtocolFactory(); ProtocolConnection protocolConnection = protocolFactory.getConnection(“http”, vCloudSuiteUrl, SslUtil.createTrustStoreForServer(vCloudSuiteUrl)); // Create a stub factory. StubFactory myStubFactory = new StubFactory(protocolConnection.getApiProvider()); // Create the stub configuration instance and // add a SAML token security context to the instance. StubConfiguration myStubConfiguration = new StubConfiguration(); SamlTokenSecurityContext tokenContext = SecurityContextFactory.createSamlSecurityContext (ssoConnection.getSamlBearerToken(), null); myStubConfiguration.setSecurityContext(tokenContext); // Create a session stub that uses the SAML token security context. Session mySession = myStubFactory.createStub(Session.class, stubConfiguration); // Create an authenticated session with the vCloud Suite service. char[] sessionId = mySession.create(); // Create a session security context and // set the stub configuration to use the session ID. SessionSecurityContext sessionContext = SecurityContextFactory.createSessionSecurityContext(sessionId); myStubConfiguration.setSecurityContext(sessionContext); Tag taggingServiceStub = myStubFactory.createStub(Tag.class, myStubConfiguration);