package opc.ua.services.session;

import opc.ua.addressspace.datatypes.NodeId;
import opc.ua.services.common.ApplicationDescription;
import opc.ua.services.common.ApplicationInstanceCertificate;
import opc.ua.services.common.EndpointDescription;
import opc.ua.services.common.RequestHeader;
import opc.ua.services.common.ResponseHeader;
import opc.ua.services.common.SessionAuthenticationToken;
import opc.ua.services.common.SignatureData;
import opc.ua.services.common.SignedSoftwareCertificate;

public class CreateSession {

	/**
	 * request
	 */
	private RequestHeader requestHeader;
	private ApplicationDescription clientDescription;
	private String serverUri;
	private String endpointUri;
	private String sessionName;
	private byte[] clientNonce;
	private ApplicationInstanceCertificate clientCertificate;
	private long requestedSessionTimeout;
	private long maxResponseMessageSize;

	/**
	 * response
	 */
	private ResponseHeader responseHeader;
	private NodeId sessionId;
	private SessionAuthenticationToken authenticationToken;
	private long revisedSessionTimeout;
	private byte[] serverNonce;
	private ApplicationInstanceCertificate serverCertificate;
	private EndpointDescription[] serverEndpoints;
	private SignedSoftwareCertificate[] serverSoftwareCertificates;
	private SignatureData serverSignature;
	private long maxRequestMessageSize;


}
