Commit Graph

177 Commits

Author SHA1 Message Date
Ehren Kret b01b76d78f
First pass at subscriptions API
This is an incomplete first pass at building the subscriptions API. More API endpoints are still to be added along with controller tests.
2021-10-12 21:23:20 -05:00
Ehren Kret 3032415141
Add receipt redemption API to chat server 2021-10-01 12:44:47 -05:00
Ehren Kret 533afa4c6e Upgrade to zkgroup 0.8.1 2021-09-28 09:28:28 -05:00
Ehren Kret 5b9bce59e1 Upgrade to zkgroup 0.8.0 2021-09-24 15:56:28 -05:00
Jon Chambers b946c27a20 Remove a metric aggregator 2021-08-27 11:52:11 -04:00
Chris Eager a0427ecf8c Update s3-upload-maven-plugin to 1.6-SNAPSHOT 2021-08-03 11:04:29 -05:00
Ehren Kret 1c9a3c6105 Bringing in Google Cloud Recaptcha Enterprise libraries 2021-08-02 13:14:44 -05:00
Jon Chambers 32a95f96ff Add a pessimistic locking system for operations on recently-deleted account records 2021-07-16 16:52:58 -04:00
realturner 62022c7de1 Migrate AppConfig to SDK v2 to detect and use web identify token 2021-07-16 16:48:33 -04:00
Graeme Connell 42ff3f8432 Switch SQS to Amazon SDKv2. 2021-06-30 12:46:12 -06:00
Chris Eager be6ef76486 Update DynamoDBLocal to 1.16.0 2021-06-23 13:50:58 -05:00
Jon Chambers eb1b073385 Add a hostname-aware reporter factory. 2021-06-10 14:23:05 -04:00
Graeme Connell c545cff1b3 Switch DynamoDB to AWSv2.
Switch from using com.amazonaws.services.dynamodbv2 to using
software.amazon.awssdk.services.dynamodb for all current DynamoDB uses.
2021-06-03 13:37:10 -06:00
Jon Chambers ca876e40ca Add a second metric aggregator. 2021-06-03 14:12:02 -04:00
Jon Chambers 76f5a71727
Include server version in logging tags 2021-06-03 11:24:25 -04:00
Ehren Kret 50c4df4f45 Add deploy phase bindings 2021-05-26 19:42:45 -05:00
Ehren Kret 7bd402b48d Build refactor in preparations for bringing in jgitver 2021-05-26 19:42:42 -05:00
Graeme Connell 680e501f83 Add dependency on AWS 2.x s3. 2021-05-21 14:50:15 -06:00
Chris Eager e663e1b0a6 Move some duplicated versions to BOMs and properties 2021-05-20 14:12:37 -05:00
Chris Eager 20cdd09171 Reformat indentation 2021-05-20 14:12:37 -05:00
Chris Eager f98dd80941 Reorganize and expand dependency declarations to fix `mvn verify` failures 2021-05-20 14:12:37 -05:00
Jon Chambers 1160af9522 Add a utility class for associating IP addresses with ASNs. 2021-05-18 17:43:30 -04:00
Jon Chambers 0b993098a8 Explicitly declare commons-lang3 as a dependency. 2021-05-17 15:52:35 -04:00
Jon Chambers 8fdbcbef44 Send directory updates in batches. 2021-05-04 15:18:43 -04:00
Chris Eager 2dbd7ffc75 Bump lettuce from 6.0.1.RELEASE to 6.0.4.RELEASE 2021-05-03 10:57:43 -05:00
Chris Eager 7fa17e33e9 Bump libphonenumber to 8.12.21 2021-04-28 16:24:46 -05:00
Jon Chambers 0e8d4f9a61 Drop Bouncy Castle as a dependency. 2021-04-26 17:58:19 -04:00
Jon Chambers b75dec40ac Drop syslog4j in favor of Dropwizard's/Logback's syslog appender. 2021-04-21 11:23:52 -05:00
Chris Eager 447fba1594 Update to the latest version of libphonenumber 2021-02-19 13:30:16 -06:00
Ehren Kret 0dcb4b645c
Build Dynamo DB backed Message Store (#358)
* Work in progress...

* Finish first pass draft of MessagesDynamoDb

* Use begins_with everywhere for destination device id

* Remove now unused methods

* First basic test built

* Add another test case

* Remove comment

* Verify more of the message contents

* Ensure all methods are tested

* Integrate MessagesDynamoDb into the MessagesManager

This change plugs the MessagesDynamoDb class into the live serving
flow in MessagesManager.

Tests are not yet as comprehensive for this big a change as they
should be, but they now compile and pass so checkpointing here with a
commit.

* Put DynamoDB before RDBS when deleting specific messages

* Extract method

* Make aws sdk version into a property

* Rename clientBuilder

* Discard messages with no GUID

* Unify batching logic into one function

* Comment on the source of the value in this constant

* Inline method

* Variable name swizzle

* Add timers to all public methods

* Add missing return statements

* Reject messages that are too large with response code 413

* Add configuration to control dynamo DB timeouts

* Set server timestamp from the ReceiptSender

* Change to shorter key names to optimize IOPS

* Fix tests broken by changing column names

* Fix broken copyright template output

* Remove copyright template error text

* Add experiments to control use of dynamo and rds in message storage

* Specify instance profile credentials for the dynamic configuration manager

* Use property for aws sdk version

* Switch dynamo to instance profile credentials

* Add metrics to the batch write loop

* Use placeholders in logging
2021-02-03 10:03:19 -06:00
Jon Chambers fc4c8d6054 Update to the latest version of libphonenumber. 2021-02-01 21:25:14 -05:00
Moxie Marlinspike 92f6a79e1f
Add a dynamic configuration manager 2021-02-01 11:01:58 -05:00
Jon Chambers 217d270457 Update to Lettuce 6.0.1. 2020-11-13 10:50:21 -05:00
Jon Chambers 143b6f0df1 Revert "Add a debug version of Lettuce to track down the cause of https://github.com/lettuce-io/lettuce-core/issues/1494."
This reverts commit 4d5fbec5a5.
2020-11-13 10:50:21 -05:00
Jon Chambers 4d5fbec5a5 Add a debug version of Lettuce to track down the cause of https://github.com/lettuce-io/lettuce-core/issues/1494. 2020-11-10 11:45:46 -05:00
Jon Chambers fb2baad7cc Restore netty-tcnative. 2020-10-28 12:29:30 -04:00
Jon Chambers 169c3d5a0f Update to Pushy 0.14.2. 2020-10-21 15:20:36 -04:00
Jon Chambers 9cffbe3d49 Drop netty-tcnative-boringssl-static as a dependency. 2020-10-21 15:20:36 -04:00
Jon Chambers 1a57d4fe11 Update to Lettuce 6. 2020-10-20 18:59:26 -04:00
Jon Chambers b041fbe3ec Add semver4j as a dependency. 2020-09-21 12:24:08 -04:00
Jon Chambers 25f3c6a548 Drop our dependency on commons-pool. 2020-09-03 11:05:10 -04:00
Jon Chambers a709a3bcc0 Remove a candidate metric provider. 2020-08-20 15:40:56 -04:00
Jon Chambers 6fb9038af1 Move to a synchronous, pooled connection model for Redis clusters. 2020-08-14 17:15:56 -04:00
Jon Chambers f3a34990ab Update to Lettuce 5.3.3. 2020-08-12 16:57:23 -04:00
Jon Chambers 30948de13d Update a metric provider dependency and remove a workaround for an upstream issue. 2020-08-11 11:02:38 -04:00
Jon Chambers 58e58ce51c Remove a candidate metric provider. 2020-08-10 11:03:20 -04:00
Ehren Kret ea00224e7f
Add support for reporting metrics to signalfx (#129) 2020-08-07 11:10:31 -05:00
Jon Chambers 6fc1b4c6c0 Add a cluster-backed message cache. 2020-07-30 11:39:14 -04:00
Jon Chambers b9cfac5934 Introduce additional metric aggregators. 2020-07-28 15:11:51 -04:00
Jon Chambers acbe410e0b Remove a metric aggregator. 2020-07-27 12:50:49 -04:00
Jon Chambers ec072fd639 Update telemetry dependencies and resolve dependency conflicts. 2020-07-24 18:59:35 -04:00
Jon Chambers 67b03076d7 Add a missing dependency. 2020-07-24 17:21:56 -04:00
Jon Chambers 33a0c4a9ae Use first party metric aggregator libraries where possible. 2020-07-24 17:21:56 -04:00
Jon Chambers 403aa5fd3e Add dependencies for additional metric aggregators. 2020-07-23 13:31:19 -04:00
Jon Chambers f5ddb0f1f8 Test ClusterLuaScript against a real Redis cluster. 2020-07-02 18:58:30 -04:00
Jon Chambers fe1054d58a Introduce a Lettuce-based fault-tolerant Redis cluster accessor. 2020-06-06 20:37:48 -04:00
Jon Chambers ba6ac778fc Update to Pushy v0.14.1. 2020-06-05 12:21:56 -04:00
Jon Chambers 45ad8f8ffb Add the Wavefront/Micrometer reporter as a dependency and configure a registry. 2020-05-20 17:46:07 -04:00
Jon Chambers acfbab5915 Update to Pushy v0.13.11. 2020-05-04 17:50:35 -04:00
Moxie Marlinspike fa739c9594 Bump zkgroups to 0.7.0 2020-04-28 08:58:57 -07:00
Moxie Marlinspike 6a11501184 Bump zkgroups to 0.6.0 2020-04-20 13:41:54 -07:00
Moxie Marlinspike c03fd4645d Bump zkgroups to 0.5.0 2020-04-09 20:36:34 -07:00
Moxie Marlinspike b76c7a4824 Update zkgroups to 0.4.2 2020-04-09 11:21:58 -07:00
Moxie Marlinspike 3b1672a4a7 Update zkgroups to 0.4.0 2020-03-14 16:30:13 -07:00
Moxie Marlinspike 009f81a9a6 Update to dropwizard 2.x 2020-03-14 16:30:13 -07:00
Moxie Marlinspike 1d76c644cb Update version of embedded pg 2020-01-21 13:03:55 -08:00
Moxie Marlinspike ba3102d667 Support for versioned profiles
Includes support for issuing zkgroup auth credentials
2020-01-21 11:04:06 -08:00
Moxie Marlinspike 940bd55079 Update libphonenumber to 8.11.0 2019-12-18 17:32:39 -08:00
Moxie Marlinspike a8c932ffe4 Update dropwizard to 1.3.16 2019-10-30 19:32:40 -07:00
Moxie Marlinspike 7a3a385569 Support for UUID based addressing 2019-08-26 11:09:54 -07:00
Moxie Marlinspike f56d219882 Update dropwizard to 1.3.12 2019-06-11 09:29:30 -07:00
Moxie Marlinspike 105a38a7db Update gcm-sender-async to use jdk11 httpclient 2019-05-30 10:46:40 -07:00
Moxie Marlinspike e6f25b9c5e Bring gcm-sender-async in as a module 2019-05-29 11:03:33 -07:00
Moxie Marlinspike d72828b3f4 Fix assembly for multi-module 2019-05-01 14:02:18 -07:00
Moxie Marlinspike 9220f4d829 Add websocket-resources as a module 2019-05-01 13:19:15 -07:00
Moxie Marlinspike 66917cd2c0 Add some dependency exclusions 2019-05-01 13:19:15 -07:00
Moxie Marlinspike d0d375aeb7 Break out into a multi-module project 2019-05-01 13:19:11 -07:00