示例#1
0
  @SuppressWarnings({"unchecked", "rawtypes"})
  @Override
  protected Endpoint createEndpoint(String uri, String remaining, Map parameters) throws Exception {
    if (this.configuration == null) {
      this.configuration = new SmppConfiguration();
    }

    // create a copy of the configuration as other endpoints can adjust their copy as well
    SmppConfiguration config = this.configuration.copy();

    config.configureFromURI(new URI(uri));
    // TODO Camel 3.0 cmueller: We should change the default in Camel 3.0 to '' so that we can
    // remove this special handling
    // special handling to set the system type to an empty string
    if (parameters.containsKey("systemType") && parameters.get("systemType") == null) {
      config.setSystemType("");
      parameters.remove("systemType");
    }
    // special handling to set the service type to an empty string
    if (parameters.containsKey("serviceType") && parameters.get("serviceType") == null) {
      config.setServiceType("");
      parameters.remove("serviceType");
    }
    setProperties(config, parameters);

    return createEndpoint(uri, config);
  }
示例#2
0
  @Test
  public void getterShouldReturnTheConfigureValuesFromURI() throws URISyntaxException {
    configuration.configureFromURI(new URI("smpp://[email protected]:2776"));

    assertEquals("127.0.0.1", configuration.getHost());
    assertEquals(new Integer(2776), configuration.getPort());
    assertEquals("client", configuration.getSystemId());
  }
示例#3
0
  @Test
  public void toStringShouldListAllInstanceVariables() {
    String expected =
        "SmppConfiguration["
            + "usingSSL=false, "
            + "enquireLinkTimer=5000, "
            + "host=localhost, "
            + "password=password, "
            + "port=2775, "
            + "systemId=smppclient, "
            + "systemType=cp, "
            + "dataCoding=0, "
            + "alphabet=0, "
            + "encoding=ISO-8859-1, "
            + "transactionTimer=10000, "
            + "registeredDelivery=1, "
            + "serviceType=CMT, "
            + "sourceAddrTon=0, "
            + "destAddrTon=0, "
            + "sourceAddrNpi=0, "
            + "destAddrNpi=0, "
            + "addressRange=, "
            + "protocolId=0, "
            + "priorityFlag=1, "
            + "replaceIfPresentFlag=0, "
            + "sourceAddr=1616, "
            + "destAddr=1717, "
            + "typeOfNumber=0, "
            + "numberingPlanIndicator=0, "
            + "initialReconnectDelay=5000, "
            + "reconnectDelay=5000, "
            + "lazySessionCreation=false, "
            + "httpProxyHost=null, "
            + "httpProxyPort=3128, "
            + "httpProxyUsername=null, "
            + "httpProxyPassword=null, "
            + "splittingPolicy=ALLOW]";

    assertEquals(expected, configuration.toString());
  }
示例#4
0
  @Test
  public void getterShouldReturnTheSetValues() {
    setNoneDefaultValues(configuration);

    assertEquals("1919", configuration.getDestAddr());
    assertEquals(0x08, configuration.getDestAddrNpi());
    assertEquals(0x02, configuration.getDestAddrTon());
    assertEquals(new Integer(5001), configuration.getEnquireLinkTimer());
    assertEquals("127.0.0.1", configuration.getHost());
    assertEquals("secret", configuration.getPassword());
    assertEquals(new Integer(2776), configuration.getPort());
    assertEquals(0x00, configuration.getPriorityFlag());
    assertEquals(0x01, configuration.getProtocolId());
    assertEquals(0x00, configuration.getRegisteredDelivery());
    assertEquals(0x01, configuration.getReplaceIfPresentFlag());
    assertEquals("XXX", configuration.getServiceType());
    assertEquals("1818", configuration.getSourceAddr());
    assertEquals(0x08, configuration.getSourceAddrNpi());
    assertEquals(0x02, configuration.getSourceAddrTon());
    assertEquals("client", configuration.getSystemId());
    assertEquals("xx", configuration.getSystemType());
    assertEquals(new Integer(10001), configuration.getTransactionTimer());
    assertEquals("UTF-8", configuration.getEncoding());
    assertEquals(0x08, configuration.getNumberingPlanIndicator());
    assertEquals(0x02, configuration.getTypeOfNumber());
    assertEquals(true, configuration.getUsingSSL());
    assertEquals(5001, configuration.getInitialReconnectDelay());
    assertEquals(5002, configuration.getReconnectDelay());
    assertEquals("127.0.0.1", configuration.getHttpProxyHost());
    assertEquals(new Integer(3129), configuration.getHttpProxyPort());
    assertEquals("user", configuration.getHttpProxyUsername());
    assertEquals("secret", configuration.getHttpProxyPassword());
    assertNotNull(configuration.getSessionStateListener());
  }
示例#5
0
 @Test
 public void getterShouldReturnTheDefaultValues() {
   assertEquals("1717", configuration.getDestAddr());
   assertEquals(0x00, configuration.getDestAddrNpi());
   assertEquals(0x00, configuration.getDestAddrTon());
   assertEquals("", configuration.getAddressRange());
   assertEquals(new Integer(5000), configuration.getEnquireLinkTimer());
   assertEquals("localhost", configuration.getHost());
   assertEquals("password", configuration.getPassword());
   assertEquals(new Integer(2775), configuration.getPort());
   assertEquals(0x01, configuration.getPriorityFlag());
   assertEquals(0x00, configuration.getProtocolId());
   assertEquals(0x01, configuration.getRegisteredDelivery());
   assertEquals(0x00, configuration.getReplaceIfPresentFlag());
   assertEquals("CMT", configuration.getServiceType());
   assertEquals("1616", configuration.getSourceAddr());
   assertEquals(0x00, configuration.getSourceAddrNpi());
   assertEquals(0x00, configuration.getSourceAddrTon());
   assertEquals("smppclient", configuration.getSystemId());
   assertEquals("cp", configuration.getSystemType());
   assertEquals(new Integer(10000), configuration.getTransactionTimer());
   assertEquals("ISO-8859-1", configuration.getEncoding());
   assertEquals(0x00, configuration.getNumberingPlanIndicator());
   assertEquals(0x00, configuration.getTypeOfNumber());
   assertEquals(false, configuration.getUsingSSL());
   assertEquals(5000, configuration.getInitialReconnectDelay());
   assertEquals(5000, configuration.getReconnectDelay());
   assertEquals(null, configuration.getHttpProxyHost());
   assertEquals(new Integer(3128), configuration.getHttpProxyPort());
   assertEquals(null, configuration.getHttpProxyUsername());
   assertEquals(null, configuration.getHttpProxyPassword());
   assertEquals(null, configuration.getSessionStateListener());
 }
示例#6
0
 private void setNoneDefaultValues(SmppConfiguration config) {
   config.setDestAddr("1919");
   config.setDestAddrNpi(NumberingPlanIndicator.NATIONAL.value());
   config.setDestAddrTon(TypeOfNumber.NATIONAL.value());
   config.setEnquireLinkTimer(new Integer(5001));
   config.setHost("127.0.0.1");
   config.setPassword("secret");
   config.setPort(new Integer(2776));
   config.setPriorityFlag((byte) 0);
   config.setProtocolId((byte) 1);
   config.setRegisteredDelivery(SMSCDeliveryReceipt.DEFAULT.value());
   config.setReplaceIfPresentFlag((byte) 1);
   config.setServiceType("XXX");
   config.setSourceAddr("1818");
   config.setSourceAddrNpi(NumberingPlanIndicator.NATIONAL.value());
   config.setSourceAddrTon(TypeOfNumber.NATIONAL.value());
   config.setSystemId("client");
   config.setSystemType("xx");
   config.setTransactionTimer(new Integer(10001));
   config.setEncoding("UTF-8");
   config.setNumberingPlanIndicator(NumberingPlanIndicator.NATIONAL.value());
   config.setTypeOfNumber(TypeOfNumber.NATIONAL.value());
   config.setUsingSSL(true);
   config.setInitialReconnectDelay(5001);
   config.setReconnectDelay(5002);
   config.setHttpProxyHost("127.0.0.1");
   config.setHttpProxyPort(new Integer(3129));
   config.setHttpProxyUsername("user");
   config.setHttpProxyPassword("secret");
   config.setSessionStateListener(
       new SessionStateListener() {
         public void onStateChange(SessionState arg0, SessionState arg1, Session arg2) {}
       });
 }
示例#7
0
  @Test
  public void cloneShouldReturnAnEqualInstance() {
    setNoneDefaultValues(configuration);
    SmppConfiguration config = configuration.copy();

    assertEquals(config.getDestAddr(), configuration.getDestAddr());
    assertEquals(config.getDestAddrNpi(), configuration.getDestAddrNpi());
    assertEquals(config.getDestAddrTon(), configuration.getDestAddrTon());
    assertEquals(config.getEnquireLinkTimer(), configuration.getEnquireLinkTimer());
    assertEquals(config.getHost(), configuration.getHost());
    assertEquals(config.getPassword(), configuration.getPassword());
    assertEquals(config.getPort(), configuration.getPort());
    assertEquals(config.getPriorityFlag(), configuration.getPriorityFlag());
    assertEquals(config.getProtocolId(), configuration.getProtocolId());
    assertEquals(config.getRegisteredDelivery(), configuration.getRegisteredDelivery());
    assertEquals(config.getReplaceIfPresentFlag(), configuration.getReplaceIfPresentFlag());
    assertEquals(config.getServiceType(), configuration.getServiceType());
    assertEquals(config.getSourceAddr(), configuration.getSourceAddr());
    assertEquals(config.getSourceAddrNpi(), configuration.getSourceAddrNpi());
    assertEquals(config.getSourceAddrTon(), configuration.getSourceAddrTon());
    assertEquals(config.getSystemId(), configuration.getSystemId());
    assertEquals(config.getSystemType(), configuration.getSystemType());
    assertEquals(config.getTransactionTimer(), configuration.getTransactionTimer());
    assertEquals(config.getEncoding(), configuration.getEncoding());
    assertEquals(config.getNumberingPlanIndicator(), configuration.getNumberingPlanIndicator());
    assertEquals(config.getTypeOfNumber(), configuration.getTypeOfNumber());
    assertEquals(config.getUsingSSL(), configuration.getUsingSSL());
    assertEquals(config.getInitialReconnectDelay(), configuration.getInitialReconnectDelay());
    assertEquals(config.getReconnectDelay(), configuration.getReconnectDelay());
    assertEquals(config.getHttpProxyHost(), configuration.getHttpProxyHost());
    assertEquals(config.getHttpProxyPort(), configuration.getHttpProxyPort());
    assertEquals(config.getHttpProxyUsername(), configuration.getHttpProxyUsername());
    assertEquals(config.getHttpProxyPassword(), configuration.getHttpProxyPassword());
    assertEquals(config.getSessionStateListener(), configuration.getSessionStateListener());
  }