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);