All Downloads are FREE. Search and download functionalities are using the official Maven repository.

Ice.Current Maven / Gradle / Ivy

Go to download

Ice is a comprehensive RPC framework that helps you build distributed applications with minimal effort using familiar object-oriented idioms

There is a newer version: 3.7.10
Show newest version
// **********************************************************************
//
// Copyright (c) 2003-2018 ZeroC, Inc. All rights reserved.
//
// This copy of Ice is licensed to you under the terms described in the
// ICE_LICENSE file included in this distribution.
//
// **********************************************************************
//
// Ice version 3.7.1
//
// 
//
// Generated from file `Current.ice'
//
// Warning: do not edit this file.
//
// 
//

package Ice;

/**
 * Information about the current method invocation for servers. Each
 * operation on the server has a Current as its implicit final
 * parameter. Current is mostly used for Ice services. Most
 * applications ignore this parameter.
 *
 **/
public class Current implements java.lang.Cloneable
{
    /**
     * The object adapter.
     *
     **/
    public ObjectAdapter adapter;

    /**
     * Information about the connection over which the current method
     * invocation was received. If the invocation is direct due to
     * collocation optimization, this value is set to null.
     *
     **/
    public Connection con;

    /**
     * The Ice object identity.
     *
     **/
    public Identity id;

    /**
     * The facet.
     *
     **/
    public String facet;

    /**
     * The operation name.
     *
     **/
    public String operation;

    /**
     * The mode of the operation.
     *
     **/
    public OperationMode mode;

    /**
     * The request context, as received from the client.
     *
     **/
    public java.util.Map ctx;

    /**
     * The request id unless oneway (0) or collocated (-1).
     *
     **/
    public int requestId;

    /**
     * The encoding version used to encode the input and output parameters.
     *
     **/
    public EncodingVersion encoding;

    public Current()
    {
        this.id = new Identity();
        this.facet = "";
        this.operation = "";
        this.mode = OperationMode.Normal;
        this.encoding = new EncodingVersion();
    }

    public Current(ObjectAdapter adapter, Connection con, Identity id, String facet, String operation, OperationMode mode, java.util.Map ctx, int requestId, EncodingVersion encoding)
    {
        this.adapter = adapter;
        this.con = con;
        this.id = id;
        this.facet = facet;
        this.operation = operation;
        this.mode = mode;
        this.ctx = ctx;
        this.requestId = requestId;
        this.encoding = encoding;
    }

    public boolean
    equals(java.lang.Object rhs)
    {
        if(this == rhs)
        {
            return true;
        }
        Current r = null;
        if(rhs instanceof Current)
        {
            r = (Current)rhs;
        }

        if(r != null)
        {
            if(this.adapter != r.adapter)
            {
                if(this.adapter == null || r.adapter == null || !this.adapter.equals(r.adapter))
                {
                    return false;
                }
            }
            if(this.con != r.con)
            {
                if(this.con == null || r.con == null || !this.con.equals(r.con))
                {
                    return false;
                }
            }
            if(this.id != r.id)
            {
                if(this.id == null || r.id == null || !this.id.equals(r.id))
                {
                    return false;
                }
            }
            if(this.facet != r.facet)
            {
                if(this.facet == null || r.facet == null || !this.facet.equals(r.facet))
                {
                    return false;
                }
            }
            if(this.operation != r.operation)
            {
                if(this.operation == null || r.operation == null || !this.operation.equals(r.operation))
                {
                    return false;
                }
            }
            if(this.mode != r.mode)
            {
                if(this.mode == null || r.mode == null || !this.mode.equals(r.mode))
                {
                    return false;
                }
            }
            if(this.ctx != r.ctx)
            {
                if(this.ctx == null || r.ctx == null || !this.ctx.equals(r.ctx))
                {
                    return false;
                }
            }
            if(this.requestId != r.requestId)
            {
                return false;
            }
            if(this.encoding != r.encoding)
            {
                if(this.encoding == null || r.encoding == null || !this.encoding.equals(r.encoding))
                {
                    return false;
                }
            }

            return true;
        }

        return false;
    }

    public int
    hashCode()
    {
        int h_ = 5381;
        h_ = IceInternal.HashUtil.hashAdd(h_, "::Ice::Current");
        h_ = IceInternal.HashUtil.hashAdd(h_, adapter);
        h_ = IceInternal.HashUtil.hashAdd(h_, con);
        h_ = IceInternal.HashUtil.hashAdd(h_, id);
        h_ = IceInternal.HashUtil.hashAdd(h_, facet);
        h_ = IceInternal.HashUtil.hashAdd(h_, operation);
        h_ = IceInternal.HashUtil.hashAdd(h_, mode);
        h_ = IceInternal.HashUtil.hashAdd(h_, ctx);
        h_ = IceInternal.HashUtil.hashAdd(h_, requestId);
        h_ = IceInternal.HashUtil.hashAdd(h_, encoding);
        return h_;
    }

    public Current
    clone()
    {
        Current c = null;
        try
        {
            c = (Current)super.clone();
        }
        catch(CloneNotSupportedException ex)
        {
            assert false; // impossible
        }
        return c;
    }

    public static final long serialVersionUID = -6178374122886477055L;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy