public ConnectionContext copy() { ConnectionContext rc = new ConnectionContext(this.messageEvaluationContext); rc.connection = this.connection; rc.connector = this.connector; rc.broker = this.broker; rc.inRecoveryMode = this.inRecoveryMode; rc.transaction = this.transaction; rc.transactions = this.transactions; rc.securityContext = this.securityContext; rc.connectionId = this.connectionId; rc.clientId = this.clientId; rc.userName = this.userName; rc.reconnect = this.reconnect; rc.wireFormatInfo = this.wireFormatInfo; rc.longTermStoreContext = this.longTermStoreContext; rc.producerFlowControl = this.producerFlowControl; rc.messageAuthorizationPolicy = this.messageAuthorizationPolicy; rc.networkConnection = this.networkConnection; rc.faultTolerant = this.faultTolerant; rc.stopping.set(this.stopping.get()); rc.dontSendReponse = this.dontSendReponse; rc.clientMaster = this.clientMaster; return rc; }