Beispiel #1
0
  private void pushMessage(String msg, String key, String uuid, String version)
      throws C3PROException {
    setCredentials();
    // We send the encrypted message to the Queue. We Base64 encode it
    SendMessageRequest mse = new SendMessageRequest(AppConfig.getProp(AppConfig.AWS_SQS_URL), msg);
    System.out.println(AppConfig.getProp(AppConfig.AWS_SQS_URL));

    // Add SQS Elem metadata: encrypted symmetric key
    MessageAttributeValue atr = new MessageAttributeValue();
    atr.setStringValue(key);
    atr.setDataType("String");
    mse.addMessageAttributesEntry(AppConfig.getProp(AppConfig.SECURITY_METADATAKEY), atr);

    // Add SQS Elem metadata: public key uuid
    atr = new MessageAttributeValue();
    atr.setStringValue(uuid);
    atr.setDataType("String");
    mse.addMessageAttributesEntry(AppConfig.getProp(AppConfig.SECURITY_METADATAKEYID), atr);

    atr = new MessageAttributeValue();
    atr.setStringValue(version);
    atr.setDataType("String");
    mse.addMessageAttributesEntry(AppConfig.getProp(AppConfig.FHIR_METADATA_VERSION), atr);

    try {
      this.sqs.sendMessage(mse);
    } catch (Exception e) {
      e.printStackTrace();
      throw new C3PROException(e.getMessage(), e);
    }
  }