Created
September 14, 2017 14:49
-
-
Save quotidian-ennui/17c265b6c71e0d4fdb0009af54c35df0 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<adapter> | |
<unique-id>${adapter.unique.id}</unique-id> | |
<heartbeat-event-interval> | |
<unit>HOURS</unit> | |
<interval>24</interval> | |
</heartbeat-event-interval> | |
<message-error-handler class="standard-processing-exception-handler"> | |
<unique-id>S3+HTTP_500</unique-id> | |
<always-handle-exception>true</always-handle-exception> | |
<processing-exception-service class="service-list"> | |
<services> | |
<clone-message-service-list> | |
<services> | |
<service-list> | |
<services> | |
<generate-unique-metadata-value-service> | |
<metadata-key>error-id</metadata-key> | |
<generator class="guid-generator"/> | |
</generate-unique-metadata-value-service> | |
<encoding-service> | |
<encoder class="mime-encoder"/> | |
</encoding-service> | |
<amazon-s3-service> | |
<connection class="shared-connection"> | |
<lookup-name>shared-amazon-s3</lookup-name> | |
</connection> | |
<operation class="amazon-s3-upload"> | |
<bucket-name class="constant-data-input-parameter"> | |
<value>${amazon.s3.bucket}</value> | |
</bucket-name> | |
<key class="constant-data-input-parameter"> | |
<value>interlok/%message{error-id}</value> | |
</key> | |
<object-metadata/> | |
</operation> | |
</amazon-s3-service> | |
</services> | |
</service-list> | |
</services> | |
</clone-message-service-list> | |
<exception-report-service> | |
<exception-serializer class="exception-as-json-with-stacktrace"/> | |
</exception-report-service> | |
<standalone-producer> | |
<producer class="jetty-standard-response-producer"> | |
<status-provider class="http-configured-status"> | |
<status>INTERNAL_ERROR_500</status> | |
</status-provider> | |
<content-type-provider class="http-configured-content-type-provider"> | |
<mime-type>application/json</mime-type> | |
</content-type-provider> | |
<send-payload>true</send-payload> | |
</producer> | |
</standalone-producer> | |
</services> | |
</processing-exception-service> | |
</message-error-handler> | |
<failed-message-retrier class="default-failed-message-retrier"> | |
<unique-id>FailedMessageRetrier</unique-id> | |
<standalone-consumer> | |
<consumer class="fs-consumer"> | |
<destination class="configured-consume-destination"> | |
<destination>${adapter.retry.dir.url}</destination> | |
<configured-thread-name>MESSAGE_RETRY</configured-thread-name> | |
</destination> | |
<poller class="quartz-cron-poller"> | |
<cron-expression>0 */2 * * * ?</cron-expression> | |
</poller> | |
<create-dirs>true</create-dirs> | |
<encoder class="mime-encoder"> | |
<retain-unique-id>true</retain-unique-id> | |
</encoder> | |
</consumer> | |
</standalone-consumer> | |
</failed-message-retrier> | |
<shared-components> | |
<connections> | |
<jetty-embedded-connection> | |
<unique-id>shared-jetty</unique-id> | |
</jetty-embedded-connection> | |
<amazon-s3-connection> | |
<unique-id>shared-amazon-s3</unique-id> | |
<authentication class="aws-keys-authentication"> | |
<access-key>${amazon.access.key}</access-key> | |
<secret-key>${amazon.secret.key}</secret-key> | |
</authentication> | |
</amazon-s3-connection> | |
</connections> | |
</shared-components> | |
<channel-list> | |
<channel> | |
<unique-id>HTTP_Channel</unique-id> | |
<consume-connection class="shared-connection"> | |
<lookup-name>shared-jetty</lookup-name> | |
</consume-connection> | |
<workflow-list> | |
<standard-workflow> | |
<unique-id>AlwaysFail</unique-id> | |
<consumer class="jetty-message-consumer"> | |
<unique-id>/fail</unique-id> | |
<destination class="configured-consume-destination"> | |
<destination>/fail/*</destination> | |
<configured-thread-name>fail</configured-thread-name> | |
</destination> | |
<parameter-handler class="jetty-http-parameters-as-metadata"/> | |
<header-handler class="jetty-http-headers-as-metadata"> | |
<header-prefix>Fail_</header-prefix> | |
</header-handler> | |
</consumer> | |
<service-collection class="service-list"> | |
<services> | |
<throw-exception-service> | |
<exception-generator class="configured-exception"> | |
<message>AlwaysFail</message> | |
</exception-generator> | |
</throw-exception-service> | |
<!-- We'll never get to this --> | |
<standalone-producer> | |
<producer class="jetty-standard-response-producer"> | |
<status-provider class="http-configured-status"> | |
<status>ACCEPTED_202</status> | |
</status-provider> | |
<response-header-provider class="jetty-no-response-headers"/> | |
<content-type-provider class="http-raw-content-type-provider"> | |
<content-type>application/json</content-type> | |
</content-type-provider> | |
<send-payload>true</send-payload> | |
</producer> | |
</standalone-producer> | |
</services> | |
</service-collection> | |
</standard-workflow> | |
<standard-workflow> | |
<unique-id>CopyToRetry</unique-id> | |
<consumer class="jetty-message-consumer"> | |
<unique-id>/retry</unique-id> | |
<destination class="configured-consume-destination"> | |
<destination>/retry/*</destination> | |
<configured-thread-name>CopyToRetry</configured-thread-name> | |
</destination> | |
<parameter-handler class="jetty-http-parameters-as-metadata"/> | |
<header-handler class="jetty-http-headers-as-metadata"/> | |
</consumer> | |
<service-collection class="service-list"> | |
<services> | |
<log-message-service> | |
<include-payload>true</include-payload> | |
</log-message-service> | |
<!-- assume http://localhost:8080/retry?errorId=XXXX --> | |
<amazon-s3-service> | |
<connection class="shared-connection"> | |
<lookup-name>shared-amazon-s3</lookup-name> | |
</connection> | |
<operation class="amazon-s3-download"> | |
<bucket-name class="constant-data-input-parameter"> | |
<value>${amazon.s3.bucket}</value> | |
</bucket-name> | |
<key class="constant-data-input-parameter"> | |
<value>interlok/%message{errorId}</value> | |
</key> | |
</operation> | |
</amazon-s3-service> | |
<standalone-producer> | |
<producer class="fs-producer"> | |
<destination class="configured-produce-destination"> | |
<destination>${adapter.retry.dir.url}</destination> | |
</destination> | |
<fs-worker class="fs-overwrite-file"/> | |
<create-dirs>true</create-dirs> | |
</producer> | |
</standalone-producer> | |
<standalone-producer> | |
<producer class="jetty-standard-response-producer"> | |
<status-provider class="http-configured-status"> | |
<status>ACCEPTED_202</status> | |
</status-provider> | |
<response-header-provider class="jetty-no-response-headers"/> | |
<content-type-provider class="http-raw-content-type-provider"> | |
<content-type>text/plain</content-type> | |
</content-type-provider> | |
<send-payload>false</send-payload> | |
</producer> | |
</standalone-producer> | |
</services> | |
</service-collection> | |
</standard-workflow> | |
</workflow-list> | |
</channel> | |
</channel-list> | |
</adapter> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment