Package org.serviceconnector.call

Examples of org.serviceconnector.call.SCMPClnExecuteCall


    if (scMessage == null) {
      throw new SCMPValidatorException("Message (scMessage) must be set.");
    }
    this.requester.getSCMPMsgSequenceNr().incrementAndGetMsgSequenceNr();
    // 2. initialize call & invoke
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, this.serviceName, this.sessionId);
    clnExecuteCall.setMessageInfo(scMessage.getMessageInfo());
    clnExecuteCall.setCacheId(scMessage.getCacheId());
    clnExecuteCall.setCompressed(scMessage.isCompressed());
    clnExecuteCall.setPartSize(scMessage.getPartSize());
    clnExecuteCall.setRequestBody(scMessage.getData());
    SCServiceCallback callback = new SCServiceCallback(true);
    try {
      PerformanceLogger.beginThreadBound();
      clnExecuteCall.invoke(callback, operationTimeoutSeconds * Constants.SEC_TO_MILLISEC_FACTOR);
    } catch (Exception e) {
      PerformanceLogger.endThreadBound(this.sessionId);
      throw new SCServiceException("Execute request failed. ", e);
    }
    // 3. receiving reply and error handling
View Full Code Here


    }
    this.requester.getSCMPMsgSequenceNr().incrementAndGetMsgSequenceNr();
    // important to set pendingRequest true in case of asynchronous communication
    this.pendingRequest = true;
    // 2. initialize call & invoke
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, this.serviceName, this.sessionId);
    clnExecuteCall.setMessageInfo(scMessage.getMessageInfo());
    clnExecuteCall.setCacheId(scMessage.getCacheId());
    clnExecuteCall.setCompressed(scMessage.isCompressed());
    clnExecuteCall.setPartSize(scMessage.getPartSize());
    clnExecuteCall.setRequestBody(scMessage.getData());
    SCServiceCallback scmpCallback = new SCServiceCallback(this, this.messageCallback);
    try {
      clnExecuteCall.invoke(scmpCallback, operationtTimeoutSeconds * Constants.SEC_TO_MILLISEC_FACTOR);
    } catch (Exception e) {
      this.pendingRequest = false;
      throw new SCServiceException("Send request failed. ", e);
    }
  }
View Full Code Here

   * Description: execute small request - cache for 2 seconds wait until expiration than try to load<br>
   * Expectation: passes
   */
  @Test
  public void t48_TryLoadingExpiredMessage() throws Exception {
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setMessageInfo(TestConstants.cacheCmd);
    clnExecuteCall.setCacheId("700");
    clnExecuteCall.setRequestBody("cacheFor2Sec");
    clnExecuteCall.setCompressed(false);
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 3000);
    cbk.getMessageSync(3000);
    Thread.sleep(2000);
    this.checkCacheContent("700", "checkCacheContent");
  }
View Full Code Here

   * Description: execute small request - cache for 2 seconds wait until expiration than try to load, load cachid again for 1 hour<br>
   * Expectation: passes
   */
  @Test
  public void t49_TryLoadingExpiredMessageLoadAgain() throws Exception {
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setMessageInfo(TestConstants.cacheCmd);
    clnExecuteCall.setCacheId("700");
    clnExecuteCall.setRequestBody("cacheFor2Sec");
    clnExecuteCall.setCompressed(false);
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 3000);
    cbk.getMessageSync(3000);
    Thread.sleep(3000);
    this.checkCacheContent("700", "checkCacheContent");
    clnExecuteCall.setRequestBody("cacheFor1Hour");
    clnExecuteCall.invoke(cbk, 3000);
    cbk.getMessageSync(3000);
    this.checkCacheContent("700", "cacheFor1Hour");
  }
View Full Code Here

   */
  @Test
  public void t70_2ClientsLoadingCacheError() throws Exception {

    // reserve connection 1 with standard session
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setMessageInfo(TestConstants.sleepCmd);
    clnExecuteCall.setRequestBody("3000");
    clnExecuteCall.setCacheId("700");
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 10000);

    // create another session2
    SCMPClnCreateSessionCall createSessionCall = new SCMPClnCreateSessionCall(this.requester, TestConstants.sesServerName1);
    createSessionCall.setSessionInfo("sessionInfo");
    createSessionCall.setEchoIntervalSeconds(3600);
    TestCallback cbk2 = new TestCallback();
    createSessionCall.invoke(cbk2, 3000);
    SCMPMessage resp = cbk2.getMessageSync(3000);
    String sessionId2 = resp.getSessionId();

    // reserve connection 2 with session2
    clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, sessionId2);
    clnExecuteCall.setMessageInfo(TestConstants.sleepCmd);
    clnExecuteCall.setRequestBody("3000");
    clnExecuteCall.setCacheId("700");
    TestCallback cbk4 = new TestCallback();
    clnExecuteCall.invoke(cbk4, 10000);
    SCMPMessage reply = cbk4.getMessageSync(4000);
    TestUtil.verifyError(reply, SCMPError.CACHE_LOADING, SCMPMsgType.CLN_EXECUTE);
    TestUtil.checkReply(cbk.getMessageSync(4000));
  }
View Full Code Here

   * Description: execute - waits 2 seconds, OTI runs out on SC<br>
   * Expectation: passes
   */
  @Test
  public void t80_OTITimesOut() throws Exception {
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setRequestBody("cacheTimeoutReply");
    clnExecuteCall.setMessageInfo(TestConstants.cacheCmd);
    clnExecuteCall.setCacheId("700");
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 1000);
    SCMPMessage responseMessage = cbk.getMessageSync(1000);
    TestUtil.verifyError(responseMessage, SCMPError.OPERATION_TIMEOUT, SCMPMsgType.CLN_EXECUTE);
    this.checkCacheContent("700", "checkCacheContent");
  }
View Full Code Here

    deleteSessionCall.invoke(cbk, 3000);
    cbk.getMessageSync(3000);
  }

  private void checkCacheContent(String cacheId, Object body) throws Exception {
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setCacheId(cacheId);
    clnExecuteCall.setMessageInfo(TestConstants.echoCmd);
    clnExecuteCall.setRequestBody("checkCacheContent");
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 30000);
    SCMPMessage scmpReply = cbk.getMessageSync(30000);

    String expected = "expected";
    String received = "received";
    if (body instanceof String) {
View Full Code Here

   * Description: execute - compressed message of type string is exchanged<br>
   * Expectation: passes
   */
  @Test
  public void t01_StringMessageCompressed() throws Exception {
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setMessageInfo(TestConstants.echoCmd);
    clnExecuteCall.setRequestBody(TestConstants.stringLength257);
    clnExecuteCall.setCompressed(true);
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 3000);
    SCMPMessage scmpReply = cbk.getMessageSync(3000);
    Assert.assertEquals(TestConstants.stringLength257, scmpReply.getBody());
    Assert.assertEquals(SCMPBodyType.TEXT.getValue(), scmpReply.getHeader(SCMPHeaderAttributeKey.BODY_TYPE));
  }
View Full Code Here

   * Description: execute - compressed message of type byte is exchanged<br>
   * Expectation: passes
   */
  @Test
  public void t02_ByteMessageCompressed() throws Exception {
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setMessageInfo(TestConstants.echoCmd);
    String largeString = TestUtil.getLargeString();
    clnExecuteCall.setRequestBody(largeString.getBytes());
    clnExecuteCall.setCompressed(true);
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 3000);
    SCMPMessage scmpReply = cbk.getMessageSync(3000);
    Assert.assertEquals(largeString, new String((byte[]) scmpReply.getBody()));
  }
View Full Code Here

   * uncompressed, ignores compression<br>
   * Expectation: passes
   */
  @Test
  public void t10_StreamMessage() throws Exception {
    SCMPClnExecuteCall clnExecuteCall = new SCMPClnExecuteCall(this.requester, TestConstants.sesServerName1, this.sessionId);
    clnExecuteCall.setMessageInfo(TestConstants.echoCmd);
    String largeString = TestUtil.getLargeString();
    ByteArrayInputStream in = new ByteArrayInputStream(largeString.getBytes());
    clnExecuteCall.setRequestBody(in);
    TestCallback cbk = new TestCallback();
    clnExecuteCall.invoke(cbk, 300000);
    SCMPMessage scmpReply = cbk.getMessageSync(300000);
    Assert.assertEquals(new String(largeString.getBytes()), new String((byte[]) scmpReply.getBody()));
  }
View Full Code Here

TOP

Related Classes of org.serviceconnector.call.SCMPClnExecuteCall

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.