Example usage for com.google.common.util.concurrent Futures immediateFuture

List of usage examples for com.google.common.util.concurrent Futures immediateFuture

Introduction

In this page you can find the example usage for com.google.common.util.concurrent Futures immediateFuture.

Prototype

@CheckReturnValue
public static <V> ListenableFuture<V> immediateFuture(@Nullable V value) 

Source Link

Document

Creates a ListenableFuture which has its value set immediately upon construction.

Usage

From source file:org.opendaylight.netconf.topology.example.ExampleNodeManagerCallback.java

@Nonnull
@Override
public ListenableFuture<Void> onNodeDeleted(@Nonnull final NodeId nodeId) {
    return Futures.immediateFuture(null);
}

From source file:org.apache.qpid.server.logging.logback.AbstractPredicateLogInclusionRule.java

@SuppressWarnings("unused")
@StateTransition(currentState = { State.ERRORED, State.UNINITIALIZED }, desiredState = State.ACTIVE)
private ListenableFuture<Void> doActivate() {
    setState(State.ACTIVE);
    QpidLoggerTurboFilter.filterAddedToRootContext(_filter);
    return Futures.immediateFuture(null);
}

From source file:org.thingsboard.server.dao.AbstractModelDao.java

protected ListenableFuture<List<T>> findListByStatementAsync(Statement statement) {
    if (statement != null) {
        statement.setConsistencyLevel(cluster.getDefaultReadConsistencyLevel());
        ResultSetFuture resultSetFuture = getSession().executeAsync(statement);
        ListenableFuture<List<T>> result = Futures.transform(resultSetFuture,
                new Function<ResultSet, List<T>>() {
                    @Nullable/*from   w  ww  . j a v a  2  s .c  o  m*/
                    @Override
                    public List<T> apply(@Nullable ResultSet resultSet) {
                        Result<T> result = getMapper().map(resultSet);
                        if (result != null) {
                            return result.all();
                        } else {
                            return Collections.emptyList();
                        }
                    }
                });
        return result;
    }
    return Futures.immediateFuture(Collections.emptyList());
}

From source file:org.apache.qpid.server.security.auth.manager.AbstractAuthenticationManager.java

@StateTransition(currentState = State.UNINITIALIZED, desiredState = State.QUIESCED)
protected ListenableFuture<Void> startQuiesced() {
    setState(State.QUIESCED);/*from   w w w  .  j av a  2 s.  c  o m*/
    return Futures.immediateFuture(null);
}

From source file:com.linkedin.pinot.server.request.SimpleRequestHandler.java

@Override
public ListenableFuture<byte[]> processRequest(ChannelHandlerContext channelHandlerContext, ByteBuf request) {

    long queryStartTime = System.nanoTime();
    _serverMetrics.addMeteredGlobalValue(ServerMeter.QUERIES, 1);

    LOGGER.debug("processing request : {}", request);

    DataTable instanceResponse = null;//from w  w  w . jav  a 2s. co m

    byte[] byteArray = new byte[request.readableBytes()];
    request.readBytes(byteArray);
    SerDe serDe = new SerDe(new TCompactProtocol.Factory());
    InstanceRequest instanceRequest = null;
    try {
        instanceRequest = new InstanceRequest();
        if (!serDe.deserialize(instanceRequest, byteArray)) {
            // the deserialize method logs and suppresses exception
            LOGGER.error("Failed to deserialize query request from broker ip: {}",
                    ((InetSocketAddress) channelHandlerContext.channel().remoteAddress()).getAddress()
                            .getHostAddress());
            DataTable result = new DataTable();
            result.addException(QueryException.INTERNAL_ERROR);
            _serverMetrics.addMeteredGlobalValue(ServerMeter.REQUEST_DESERIALIZATION_EXCEPTIONS, 1);
            return Futures.immediateFuture(ScheduledRequestHandler.serializeDataTable(instanceRequest,
                    _serverMetrics, instanceResponse, queryStartTime));
        }
        long deserRequestTime = System.nanoTime();
        BrokerRequest brokerRequest = instanceRequest.getQuery();
        _serverMetrics.addPhaseTiming(brokerRequest, ServerQueryPhase.REQUEST_DESERIALIZATION,
                deserRequestTime - queryStartTime);
        LOGGER.debug("Processing requestId: {},request: {}", instanceRequest.getRequestId(), instanceRequest);

        QueryRequest queryRequestContext = new QueryRequest(instanceRequest);
        String brokerId = instanceRequest.isSetBrokerId() ? instanceRequest.getBrokerId()
                : ((InetSocketAddress) channelHandlerContext.channel().remoteAddress()).getAddress()
                        .getHostAddress();
        // we will set the ip address as client id. This is good enough for start.
        // Ideally, broker should send it's identity as part of the request
        queryRequestContext.setClientId(brokerId);

        long startTime = System.nanoTime();
        instanceResponse = _queryExecutor.processQuery(queryRequestContext);
        long totalNanos = System.nanoTime() - startTime;
        _serverMetrics.addPhaseTiming(brokerRequest, ServerQueryPhase.QUERY_PROCESSING, totalNanos);
    } catch (Exception e) {
        LOGGER.error(
                "Got exception while processing request. Returning error response for requestId: {}, brokerId: {}",
                instanceRequest.getRequestId(), instanceRequest.getBrokerId(), e);
        _serverMetrics.addMeteredGlobalValue(ServerMeter.UNCAUGHT_EXCEPTIONS, 1);
        DataTableBuilder dataTableBuilder = new DataTableBuilder(null);
        List<ProcessingException> exceptions = new ArrayList<ProcessingException>();
        ProcessingException exception = QueryException.INTERNAL_ERROR.deepCopy();
        exception.setMessage(e.getMessage());
        exceptions.add(exception);
        instanceResponse = dataTableBuilder.buildExceptions();
    }
    byte[] responseBytes = ScheduledRequestHandler.serializeDataTable(instanceRequest, _serverMetrics,
            instanceResponse, queryStartTime);
    return Futures.immediateFuture(responseBytes);
}

From source file:io.airlift.discovery.server.DiscoveryServerModule.java

@Singleton
@Provides//w  w w  .j av a  2s .  co m
public ServiceSelector getServiceInventory(final ServiceInventory inventory, final NodeInfo nodeInfo) {
    return new ServiceSelector() {
        @Override
        public String getType() {
            return "discovery";
        }

        @Override
        public String getPool() {
            return nodeInfo.getPool();
        }

        @Override
        public List<ServiceDescriptor> selectAllServices() {
            return ImmutableList.copyOf(inventory.getServiceDescriptors(getType()));
        }

        @Override
        public ListenableFuture<List<ServiceDescriptor>> refresh() {
            // this should be async, but it is never used
            inventory.updateServiceInventory();
            return Futures.immediateFuture(selectAllServices());
        }
    };
}

From source file:org.opendaylight.controller.clustering.it.provider.impl.ProduceTransactionsHandler.java

public static ListenableFuture<RpcResult<ProduceTransactionsOutput>> start(
        final DOMDataTreeService domDataTreeService, final ProduceTransactionsInput input) {
    final String id = input.getId();
    LOG.debug("Filling the item list {} with initial values.", id);

    final YangInstanceIdentifier idListWithKey = ID_INT_YID
            .node(new NodeIdentifierWithPredicates(ID_INT, ID, id));

    final DOMDataTreeProducer itemProducer = domDataTreeService.createProducer(Collections
            .singleton(new DOMDataTreeIdentifier(LogicalDatastoreType.CONFIGURATION, idListWithKey)));

    final DOMDataTreeCursorAwareTransaction tx = itemProducer.createTransaction(false);
    final DOMDataTreeWriteCursor cursor = tx
            .createCursor(new DOMDataTreeIdentifier(LogicalDatastoreType.CONFIGURATION, idListWithKey));

    final MapNode list = ImmutableNodes.mapNodeBuilder(ITEM).build();
    cursor.write(list.getIdentifier(), list);
    cursor.close();/*from   ww  w . ja  v a2s  .  c  o m*/

    try {
        tx.submit().get(INIT_TX_TIMEOUT_SECONDS, TimeUnit.SECONDS);
    } catch (InterruptedException | ExecutionException | TimeoutException e) {
        LOG.warn("Unable to fill the initial item list.", e);
        closeProducer(itemProducer);

        return Futures.immediateFuture(RpcResultBuilder.<ProduceTransactionsOutput>failed()
                .withError(RpcError.ErrorType.APPLICATION, "Unexpected-exception", e).build());
    }

    final ProduceTransactionsHandler handler = new ProduceTransactionsHandler(itemProducer,
            new DOMDataTreeIdentifier(LogicalDatastoreType.CONFIGURATION,
                    idListWithKey.node(list.getIdentifier()).toOptimized()),
            input);
    // It is handler's responsibility to close itemProducer when the work is finished.
    handler.doStart();
    return handler.future;
}

From source file:com.google.api.server.spi.config.datastore.testing.FakeAsyncMemcacheService.java

@Override
public Future<IdentifiableValue> getIdentifiable(Object key) {
    return Futures.immediateFuture(memcacheService.getIdentifiable(key));
}

From source file:org.apache.qpid.server.security.group.GroupProviderImpl.java

@StateTransition(currentState = { State.ACTIVE }, desiredState = State.DELETED)
private ListenableFuture<Void> doDelete() {
    deleted();//from   www . jav a2 s .c o  m
    return Futures.immediateFuture(null);
}

From source file:org.apache.qpid.server.security.access.plugins.AbstractLegacyAccessControlProvider.java

@StateTransition(currentState = { State.UNINITIALIZED, State.QUIESCED,
        State.ERRORED }, desiredState = State.ACTIVE)
@SuppressWarnings("unused")
private ListenableFuture<Void> activate() {

    final boolean isManagementMode = getModel().getAncestor(SystemConfig.class, this).isManagementMode();
    try {/* w w  w .j  a va 2s .  c o  m*/
        recreateAccessController();
        setState(isManagementMode ? State.QUIESCED : State.ACTIVE);
    } catch (RuntimeException e) {
        setState(State.ERRORED);
        if (isManagementMode) {
            LOGGER.warn("Failed to activate ACL provider: " + getName(), e);
        } else {
            throw e;
        }
    }
    return Futures.immediateFuture(null);
}