├── .dockerignore ├── .gitignore ├── .travis.yml ├── Dockerfile ├── Gemfile ├── LICENSE ├── README.md ├── composer.json ├── example ├── config │ ├── db.json │ └── elasticmq.conf └── docker-compose.yml ├── features ├── bootstrap │ └── FeatureContext.php ├── publish.feature ├── sqs.feature ├── step_definitions │ ├── background.rb │ ├── publish.rb │ ├── subscription.rb │ └── topic.rb ├── subscription.feature └── topic.feature ├── project ├── build.properties └── plugins.sbt └── src ├── main ├── resources │ ├── application.conf │ └── logback.xml └── scala │ └── me │ └── snov │ └── sns │ ├── Main.scala │ ├── actor │ ├── DbActor.scala │ ├── HomeActor.scala │ ├── ProducerActor.scala │ ├── PublishActor.scala │ ├── RawProducerActor.scala │ └── SubscribeActor.scala │ ├── api │ ├── HealthCheckApi.scala │ ├── HomeApi.scala │ ├── PublishApi.scala │ ├── SubscribeApi.scala │ └── TopicApi.scala │ ├── model │ ├── Configuration.scala │ ├── Message.scala │ ├── Subscription.scala │ ├── Topic.scala │ └── TopicNotFoundException.scala │ ├── response │ ├── PublishResponse.scala │ ├── SubscribeResponse.scala │ ├── TopicResponse.scala │ └── XmlHttpResponse.scala │ ├── service │ └── DbService.scala │ └── util │ └── ToStrict.scala └── test ├── resources └── application.conf └── scala └── me └── snov └── sns └── api ├── HealthCheckSpec.scala ├── PublishSpec.scala ├── SubscribeSpec.scala └── TopicSpec.scala /.dockerignore: -------------------------------------------------------------------------------- 1 | example 2 | features 3 | project 4 | src 5 | tmp 6 | vendor 7 | 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/.travis.yml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/Dockerfile -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/Gemfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/README.md -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/composer.json -------------------------------------------------------------------------------- /example/config/db.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/example/config/db.json -------------------------------------------------------------------------------- /example/config/elasticmq.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/example/config/elasticmq.conf -------------------------------------------------------------------------------- /example/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/example/docker-compose.yml -------------------------------------------------------------------------------- /features/bootstrap/FeatureContext.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/bootstrap/FeatureContext.php -------------------------------------------------------------------------------- /features/publish.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/publish.feature -------------------------------------------------------------------------------- /features/sqs.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/sqs.feature -------------------------------------------------------------------------------- /features/step_definitions/background.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/step_definitions/background.rb -------------------------------------------------------------------------------- /features/step_definitions/publish.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/step_definitions/publish.rb -------------------------------------------------------------------------------- /features/step_definitions/subscription.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/step_definitions/subscription.rb -------------------------------------------------------------------------------- /features/step_definitions/topic.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/step_definitions/topic.rb -------------------------------------------------------------------------------- /features/subscription.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/subscription.feature -------------------------------------------------------------------------------- /features/topic.feature: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/features/topic.feature -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.1.1 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/resources/application.conf -------------------------------------------------------------------------------- /src/main/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/resources/logback.xml -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/Main.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/Main.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/actor/DbActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/actor/DbActor.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/actor/HomeActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/actor/HomeActor.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/actor/ProducerActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/actor/ProducerActor.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/actor/PublishActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/actor/PublishActor.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/actor/RawProducerActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/actor/RawProducerActor.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/actor/SubscribeActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/actor/SubscribeActor.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/api/HealthCheckApi.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/api/HealthCheckApi.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/api/HomeApi.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/api/HomeApi.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/api/PublishApi.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/api/PublishApi.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/api/SubscribeApi.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/api/SubscribeApi.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/api/TopicApi.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/api/TopicApi.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/model/Configuration.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/model/Configuration.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/model/Message.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/model/Message.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/model/Subscription.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/model/Subscription.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/model/Topic.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/model/Topic.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/model/TopicNotFoundException.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/model/TopicNotFoundException.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/response/PublishResponse.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/response/PublishResponse.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/response/SubscribeResponse.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/response/SubscribeResponse.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/response/TopicResponse.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/response/TopicResponse.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/response/XmlHttpResponse.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/response/XmlHttpResponse.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/service/DbService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/service/DbService.scala -------------------------------------------------------------------------------- /src/main/scala/me/snov/sns/util/ToStrict.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/main/scala/me/snov/sns/util/ToStrict.scala -------------------------------------------------------------------------------- /src/test/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/test/resources/application.conf -------------------------------------------------------------------------------- /src/test/scala/me/snov/sns/api/HealthCheckSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/test/scala/me/snov/sns/api/HealthCheckSpec.scala -------------------------------------------------------------------------------- /src/test/scala/me/snov/sns/api/PublishSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/test/scala/me/snov/sns/api/PublishSpec.scala -------------------------------------------------------------------------------- /src/test/scala/me/snov/sns/api/SubscribeSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/test/scala/me/snov/sns/api/SubscribeSpec.scala -------------------------------------------------------------------------------- /src/test/scala/me/snov/sns/api/TopicSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/s12v/sns/HEAD/src/test/scala/me/snov/sns/api/TopicSpec.scala --------------------------------------------------------------------------------