Package com.fasterxml.storemate.shared

Examples of com.fasterxml.storemate.shared.IpAndPort


    @SuppressWarnings("unchecked")
    public <RESP extends ServiceResponse> RESP handlePost(ServiceRequest request, RESP response,
            OperationDiagnostics metadata)
    {
        // First things first: need to have a caller
        IpAndPort caller = getCallerQueryParam(request);
        if (caller == null) {
            return badRequest(response,
                    "Missing or invalid '"+ClusterMateConstants.HTTP_QUERY_PARAM_CALLER+"' value");
        }
        // as well as known state...
View Full Code Here


    @SuppressWarnings("unchecked")
    public BOOTSTRAPPER addNodes(String... nodes)
    {
        for (String node : nodes) {
            _nodes.add(new IpAndPort(node));
        }
        return (BOOTSTRAPPER) this;
    }
View Full Code Here

        _nodes.add(node);
        return (BOOTSTRAPPER) this;
    }

    public BOOTSTRAPPER addNode(String node) {
        return addNode(new IpAndPort(node));
    }
View Full Code Here

            throw new IllegalStateException("No server nodes defined for client, can not build");
        }
        // Second: try resolving IPs...
        Iterator<IpAndPort> it = _nodes.iterator();
        while (it.hasNext()) {
            IpAndPort ip = it.next();
            try {
                ip.getIP();
            } catch (Exception e) {
                logError("Failed to resolve end point '"+ip.toString()+"', skipping. Problem: "+e.getMessage());
                it.remove();
            }
        }
        // Still some left?
        if (_nodes.isEmpty()) {
View Full Code Here

        long roundStart;
      
        while ((roundStart = System.currentTimeMillis()) < waitUntil) {
            Iterator<IpAndPort> it = nodes.iterator();
            while (it.hasNext()) {
                IpAndPort ip = it.next();
                final long requestTime = System.currentTimeMillis();
                long maxTimeout = waitUntil - requestTime;
                try {
                    ClusterStatusResponse resp = _accessor.getClusterStatus(ip,
                            Math.min(maxTimeout, BOOTSTRAP_TIMEOUT_MSECS));
View Full Code Here

    protected boolean _updateInitialState(Collection<IpAndPort> nodes,
            long waitUntil, ClusterViewByClientImpl<K> clusterView) throws IOException
    {
        Iterator<IpAndPort> it = nodes.iterator();
        while (it.hasNext()) {
            IpAndPort ip = it.next();
            final long requestTime = System.currentTimeMillis();
            long maxTimeout = waitUntil - requestTime;
            try {
                ClusterStatusResponse resp = _accessor.getClusterStatus(ip,
                        Math.min(maxTimeout, BOOTSTRAP_TIMEOUT_MSECS));
View Full Code Here

        String str = request.getQueryParameter(ClusterMateConstants.HTTP_QUERY_PARAM_CALLER);
        if (str == null || (str = str.trim()).length() == 0) {
            return null;
        }
        try {
            return new IpAndPort(str);
        } catch (Exception e) {
            LOG.warn("Invalid value for {}: '{}', problem: {}",
                    ClusterMateConstants.HTTP_QUERY_PARAM_CALLER,
                    str, e.getMessage());
            return null;
View Full Code Here

     * @return True if there was a status update
     */
    protected boolean updateStatus(NodeState nodeStatus, boolean byNodeItself)
    {
        // First: do we have info for the node?
        final IpAndPort endpoint = nodeStatus.getAddress();
        if (endpoint == null) {
            LOG.warn("Missing endpoint info (sender? "+byNodeItself+"); need to skip update");
            return false;
        }
        // also, local state must be produced locally; ignore what others think
        // (in future could try pro-active fixing but...)
        if (endpoint.equals(_localState.getAddress())) {
            return false;
        }
        ClusterPeerImpl<K,E> peer;

        try {
View Full Code Here

     * Method called when we get information on a peer for which we do not
     * have peer thread.
     */
    protected void _updateMissingPeer(NodeState nodeStatus, boolean forSender) throws IOException
    {
        final IpAndPort endpoint = nodeStatus.getAddress();
        /* Ok: let's also see if we have old state information in the
         * local DB. If we do, we may be able to avoid syncing from
         * the beginning of time; and/or obtain actual key range.
         */
        NodeStateStore stateStore = _stores.getNodeStore();
View Full Code Here

    @SuppressWarnings("unchecked")
    public <RESP extends ServiceResponse> RESP handlePost(ServiceRequest request, RESP response,
            OperationDiagnostics metadata)
    {
        // First things first: need to have a caller
        IpAndPort caller = getCallerQueryParam(request);
        if (caller == null) {
            return badRequest(response,
                    "Missing or invalid '"+ClusterMateConstants.QUERY_PARAM_CALLER+"' value");
        }
        // as well as known state...
View Full Code Here

TOP

Related Classes of com.fasterxml.storemate.shared.IpAndPort

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.