Exemple #1
0
    void ClientStub::assign(const ClientStub & rhs)
    {
        if (&rhs != this)
        {
            mInterfaceName                  = rhs.mInterfaceName;
            mToken                          = rhs.mToken;
            mDefaultCallingSemantics        = rhs.mDefaultCallingSemantics;
            mProtocol                       = rhs.mProtocol;
            mMarshalingProtocol             = rhs.mMarshalingProtocol;
            mEndpointName                   = rhs.mEndpointName;
            mObjectName                     = rhs.mObjectName;
            mRemoteCallTimeoutMs            = rhs.mRemoteCallTimeoutMs;
            mConnectTimeoutMs               = rhs.mConnectTimeoutMs;
            mAutoReconnect                  = rhs.mAutoReconnect;
            mConnected                      = false;
            mAutoVersioning                 = rhs.mAutoVersioning;
            mRuntimeVersion                 = rhs.mRuntimeVersion;
            mArchiveVersion                 = rhs.mArchiveVersion;
            mUseNativeWstringSerialization  = rhs.mUseNativeWstringSerialization;
            mEnableSfPointerTracking        = rhs.mEnableSfPointerTracking;
            mUserData                       = rhs.mUserData;
            mPingBackIntervalMs             = rhs.mPingBackIntervalMs;
            mSignalled                      = false;

            setEndpoint(rhs.getEndpoint());

            mClientProgressPtr              = rhs.mClientProgressPtr;

#if RCF_FEATURE_FILETRANSFER==1
            mFileProgressCb                 = rhs.mFileProgressCb;
            mTransferWindowS                = rhs.mTransferWindowS;
#endif

            mHttpProxy                      = rhs.mHttpProxy;
            mHttpProxyPort                  = rhs.mHttpProxyPort;
            mTransportProtocol              = rhs.mTransportProtocol;
            mUsername                       = rhs.mUsername;
            mPassword                       = rhs.mPassword;
            mKerberosSpn                    = rhs.mKerberosSpn;
            mEnableCompression              = rhs.mEnableCompression;

            mCertificatePtr                 = rhs.mCertificatePtr;
            mCaCertificatePtr               = rhs.mCaCertificatePtr;
            mCertificateValidationCb        = rhs.mCertificateValidationCb;
            mSchannelCertificateValidation  = rhs.mSchannelCertificateValidation;
            mOpenSslCipherSuite             = rhs.mOpenSslCipherSuite;

            mSslImplementation              = rhs.mSslImplementation;
        }
    }
Exemple #2
0
/**
 * Sets the polylines start and endpoint to match the first and last vertex.
 */
void RS_Polyline::updateEndpoints() {
        RS_Entity* e1 = firstEntity();
        if (e1!=NULL && e1->isAtomic()) {
                RS_Vector v = ((RS_AtomicEntity*)e1)->getStartpoint();
                setStartpoint(v);
        }

        RS_Entity* e2 = lastEntity();
        if (isClosed()) {
                e2 = prevEntity();
        }
        if (e2!=NULL && e2->isAtomic()) {
                RS_Vector v = ((RS_AtomicEntity*)e2)->getEndpoint();
                setEndpoint(v);
    }
}
Exemple #3
0
/**
 * Sets the polylines start and endpoint to match the first and last vertex.
 */
void RS_Polyline::updateEndpoints() {
        RS_Entity* e1 = firstEntity();
		if (e1 && e1->isAtomic()) {
				RS_Vector const& v = e1->getStartpoint();
                setStartpoint(v);
        }

		RS_Entity const* e2 = last();
        if (isClosed()) {
                e2 = prevEntity();
        }
		if (e2 && e2->isAtomic()) {
				RS_Vector const& v = e2->getEndpoint();
                setEndpoint(v);
    }
}
Exemple #4
0
    ClientStub &ClientStub::operator=( const ClientStub &rhs )
    {
        if (&rhs != this)
        {
            mInterfaceName              = rhs.mInterfaceName;
            mToken                      = rhs.mToken;
            mDefaultCallingSemantics    = rhs.mDefaultCallingSemantics;
            mProtocol                   = rhs.mProtocol;
            mMarshalingProtocol         = rhs.mMarshalingProtocol;
            mEndpointName               = rhs.mEndpointName;
            mObjectName                 = rhs.mObjectName;
            mRemoteCallTimeoutMs        = rhs.mRemoteCallTimeoutMs;
            mConnectTimeoutMs           = rhs.mConnectTimeoutMs;
            mAutoReconnect              = rhs.mAutoReconnect;
            mConnected                  = false;
            mAutoVersioning             = rhs.mAutoVersioning;
            mRuntimeVersion             = rhs.mRuntimeVersion;
            mArchiveVersion             = rhs.mArchiveVersion;
            mUseNativeWstringSerialization = rhs.mUseNativeWstringSerialization;
            mEnableSfPointerTracking    = rhs.mEnableSfPointerTracking;
            mUserData                   = rhs.mUserData;
            mPingBackIntervalMs         = rhs.mPingBackIntervalMs;
            mSignalled                  = false;

            setEndpoint( rhs.getEndpoint());

            if (rhs.mClientProgressPtr)
            {
                mClientProgressPtr.reset(
                    new ClientProgress(*rhs.mClientProgressPtr));
            }

#if RCF_FEATURE_FILETRANSFER==1
            mFileProgressCb = rhs.mFileProgressCb;
            mTransferWindowS = rhs.mTransferWindowS;
#endif
            mHttpProxy = rhs.mHttpProxy;
            mHttpProxyPort = rhs.mHttpProxyPort;
            mTransportProtocol = rhs.mTransportProtocol;
            mUsername = rhs.mUsername;
            mPassword = rhs.mPassword;
            mKerberosSpn = rhs.mKerberosSpn;
            mEnableCompression = rhs.mEnableCompression;
            mSslImplementation = rhs.mSslImplementation;
        }
        return *this;
    }
Exemple #5
0
/** Packs a message into a zeromq message */
static zmq::message_t pack(const Message &msg) {
    ::capnp::MallocMessageBuilder builder;
    auto sermsg = builder.initRoot<serialize::Message>();
    sermsg.setEndpoint(msg.endpoint());
    sermsg.setExpectsAnswer(msg.expectsAnswer());
    sermsg.setId(msg.id());
    sermsg.setOriginator(msg.originator());
    sermsg.setSchema(msg.schema());
    sermsg.setType(static_cast<int>(msg.type()));
    if (!msg.data().empty()) {
        auto payload_builder = sermsg.initPayload(msg.data().size());
        memcpy(&payload_builder[0], msg.data().data(), msg.data().size());
    }
    auto data = capnp::messageToFlatArray(builder);
    auto byte_size = data.size() * sizeof(capnp::word);
    zmq::message_t ret(byte_size);
    memcpy(ret.data(), data.begin(), byte_size);
    return ret;
}
Exemple #6
0
udp_socket::udp_socket(const socket_address& endpoint)
	: udp_socket()
{
	setEndpoint(endpoint);
}
Exemple #7
0
    ClientStub::ClientStub(const ClientStub &rhs) :
        mToken(rhs.mToken),
        mDefaultCallingSemantics(rhs.mDefaultCallingSemantics),
        mProtocol(rhs.mProtocol),
        mMarshalingProtocol(DefaultMarshalingProtocol),
        mEndpointName(rhs.mEndpointName),
        mObjectName(rhs.mObjectName),
        mInterfaceName(rhs.mInterfaceName),
        mRemoteCallTimeoutMs(rhs.mRemoteCallTimeoutMs),
        mConnectTimeoutMs(rhs.mConnectTimeoutMs),
        mAutoReconnect(rhs.mAutoReconnect),
        mConnected(),
        mTries(),
        mAutoVersioning(rhs.mAutoVersioning),
        mRuntimeVersion(rhs.mRuntimeVersion),
        mArchiveVersion(rhs.mArchiveVersion),
        mUseNativeWstringSerialization(rhs.mUseNativeWstringSerialization),
        mEnableSfPointerTracking(rhs.mEnableSfPointerTracking),
        mUserData(rhs.mUserData),
        
        mAsync(),
        mAsyncOpType(None),
        mEndTimeMs(),
        mRetry(),
        mRcs(Twoway),
        mEncodedByteBuffer(),
        mEncodedByteBuffers(),
        mpParameters(),
        mPingBackIntervalMs(rhs.mPingBackIntervalMs),
        mPingBackTimeStamp(),
        mPingBackCount(),
        mNextTimerCallbackMs(),
        mNextPingBackCheckMs(),
        mPingBackCheckIntervalMs(),
        mTimerIntervalMs(),

        mSignalled(),

        mBatchMode(false),
        mBatchMaxMessageLength(DefaultBatchMaxMessageLimit),
        mBatchCount(0),
        mBatchMessageCount(0),
        mSetTransportProtocol(false),        

#if RCF_FEATURE_FILETRANSFER==1
        mFileProgressCb(rhs.mFileProgressCb),
#endif
        mTransferWindowS(rhs.mTransferWindowS),
        mCallInProgress(false),

        mHttpProxy(rhs.mHttpProxy),
        mHttpProxyPort(rhs.mHttpProxyPort),
        mTransportProtocol(rhs.mTransportProtocol),
        mUsername(rhs.mUsername),
        mPassword(rhs.mPassword),
        mKerberosSpn(rhs.mKerberosSpn),
        mEnableCompression(rhs.mEnableCompression),

        mSslImplementation(rhs.mSslImplementation)
    {
        setEndpoint( rhs.getEndpoint() );
        if (rhs.mClientProgressPtr)
        {
            mClientProgressPtr.reset(
                new ClientProgress(*rhs.mClientProgressPtr));
        }
    }