code: public byte[] bind(int commandId, int sequenceNumber, String systemId,
              String password, String systemType, byte interfaceVersion,
              byte addrTon, byte addrNpi, String addressRange)
              throws PDUStringException {
          StringValidator.validateString(systemId, StringParameter.SYSTEM_ID);
          StringValidator.validateString(password, StringParameter.PASSWORD);
          StringValidator.validateString(systemType, StringParameter.SYSTEM_TYPE);
          StringValidator.validateString(addressRange,
                  StringParameter.ADDRESS_RANGE);
  
          PDUByteBuffer buf = new PDUByteBuffer(commandId, 0, sequenceNumber);
  
          buf.append(systemId);
          buf.append(password);
          buf.append(systemType);
          buf.append(interfaceVersion);
          buf.append(addrTon);
          buf.append(addrNpi);
          buf.append(addressRange);
          return buf.toBytes();
      }
docs: /*
  (non-Javadoc)
  
  @see org.jsmpp.util.PDUComposer#bind(int, int, java.lang.String,
  java.lang.String, java.lang.String, byte, byte, byte,
  java.lang.String)