Search in sources :

Example 76 with OperationService

use of com.hazelcast.spi.OperationService in project hazelcast by hazelcast.

the class Invocation_NestedLocalTest method invokeOnPartition_outerLocal_innerSameInstance_callsDifferentPartition.

@Test
public void invokeOnPartition_outerLocal_innerSameInstance_callsDifferentPartition() {
    HazelcastInstance local = createHazelcastInstance();
    OperationService operationService = getOperationService(local);
    int outerPartitionId = getPartitionId(local);
    int innerPartitionId = randomPartitionIdNotMappedToSameThreadAsGivenPartitionIdOnInstance(local, outerPartitionId);
    InnerOperation innerOperation = new InnerOperation(RESPONSE, innerPartitionId);
    OuterOperation outerOperation = new OuterOperation(innerOperation, outerPartitionId);
    InternalCompletableFuture future = operationService.invokeOnPartition(null, outerOperation, outerPartitionId);
    expected.expect(IllegalThreadStateException.class);
    expected.expectMessage("cannot make remote call");
    future.join();
}
Also used : HazelcastInstance(com.hazelcast.core.HazelcastInstance) InternalCompletableFuture(com.hazelcast.spi.InternalCompletableFuture) OperationService(com.hazelcast.spi.OperationService) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 77 with OperationService

use of com.hazelcast.spi.OperationService in project hazelcast by hazelcast.

the class Invocation_NestedLocalTest method invokeOnPartition_outerGeneric_innerGeneric_forbidden.

@Test
public void invokeOnPartition_outerGeneric_innerGeneric_forbidden() {
    HazelcastInstance local = createHazelcastInstance();
    OperationService operationService = getOperationService(local);
    InnerOperation innerOperation = new InnerOperation(RESPONSE, GENERIC_OPERATION);
    OuterOperation outerOperation = new OuterOperation(innerOperation, GENERIC_OPERATION);
    expected.expect(Exception.class);
    operationService.invokeOnPartition(null, outerOperation, outerOperation.getPartitionId());
}
Also used : HazelcastInstance(com.hazelcast.core.HazelcastInstance) OperationService(com.hazelcast.spi.OperationService) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 78 with OperationService

use of com.hazelcast.spi.OperationService in project hazelcast by hazelcast.

the class Invocation_NestedLocalTest method invokeOnPartition_outerLocal_innerGeneric.

@Test
public void invokeOnPartition_outerLocal_innerGeneric() {
    HazelcastInstance local = createHazelcastInstance();
    OperationService operationService = getOperationService(local);
    int partitionId = getPartitionId(local);
    InnerOperation innerOperation = new InnerOperation(RESPONSE, GENERIC_OPERATION);
    OuterOperation outerOperation = new OuterOperation(innerOperation, partitionId);
    InternalCompletableFuture future = operationService.invokeOnPartition(null, outerOperation, partitionId);
    assertEquals(RESPONSE, future.join());
}
Also used : HazelcastInstance(com.hazelcast.core.HazelcastInstance) InternalCompletableFuture(com.hazelcast.spi.InternalCompletableFuture) OperationService(com.hazelcast.spi.OperationService) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 79 with OperationService

use of com.hazelcast.spi.OperationService in project hazelcast by hazelcast.

the class Invocation_NestedRemoteTest method invokeOnPartition_outerRemote_innerSameInstance_samePartition.

@Test
public void invokeOnPartition_outerRemote_innerSameInstance_samePartition() {
    HazelcastInstance[] cluster = createHazelcastInstanceFactory(2).newInstances();
    HazelcastInstance local = cluster[0];
    HazelcastInstance remote = cluster[1];
    OperationService operationService = getOperationService(local);
    int partitionId = getPartitionId(remote);
    InnerOperation innerOperation = new InnerOperation(RESPONSE, partitionId);
    OuterOperation outerOperation = new OuterOperation(innerOperation, partitionId);
    InternalCompletableFuture future = operationService.invokeOnPartition(null, outerOperation, partitionId);
    assertEquals(RESPONSE, future.join());
}
Also used : HazelcastInstance(com.hazelcast.core.HazelcastInstance) InternalCompletableFuture(com.hazelcast.spi.InternalCompletableFuture) OperationService(com.hazelcast.spi.OperationService) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 80 with OperationService

use of com.hazelcast.spi.OperationService in project hazelcast by hazelcast.

the class Invocation_NestedRemoteTest method invokeOnTarget_outerGeneric_innerSameInstance.

@Test
public void invokeOnTarget_outerGeneric_innerSameInstance() {
    HazelcastInstance[] cluster = createHazelcastInstanceFactory(2).newInstances();
    HazelcastInstance local = cluster[0];
    HazelcastInstance remote = cluster[1];
    OperationService operationService = getOperationService(local);
    InnerOperation innerOperation = new InnerOperation(RESPONSE, 0);
    OuterOperation outerOperation = new OuterOperation(innerOperation, GENERIC_OPERATION);
    InternalCompletableFuture future = operationService.invokeOnTarget(null, outerOperation, getAddress(remote));
    assertEquals(RESPONSE, future.join());
}
Also used : HazelcastInstance(com.hazelcast.core.HazelcastInstance) InternalCompletableFuture(com.hazelcast.spi.InternalCompletableFuture) OperationService(com.hazelcast.spi.OperationService) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Aggregations

OperationService (com.hazelcast.spi.OperationService)135 Test (org.junit.Test)49 QuickTest (com.hazelcast.test.annotation.QuickTest)48 ParallelTest (com.hazelcast.test.annotation.ParallelTest)46 HazelcastInstance (com.hazelcast.core.HazelcastInstance)45 Operation (com.hazelcast.spi.Operation)39 NodeEngine (com.hazelcast.spi.NodeEngine)30 Address (com.hazelcast.nio.Address)26 Future (java.util.concurrent.Future)26 TestHazelcastInstanceFactory (com.hazelcast.test.TestHazelcastInstanceFactory)24 Config (com.hazelcast.config.Config)21 InternalCompletableFuture (com.hazelcast.spi.InternalCompletableFuture)21 Member (com.hazelcast.core.Member)19 Data (com.hazelcast.nio.serialization.Data)14 ArrayList (java.util.ArrayList)11 Node (com.hazelcast.instance.Node)7 InternalOperationService (com.hazelcast.spi.impl.operationservice.InternalOperationService)7 ExecutionException (java.util.concurrent.ExecutionException)7 TimeoutException (java.util.concurrent.TimeoutException)7 OperationTimeoutException (com.hazelcast.core.OperationTimeoutException)6