aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Move resources to corresponding subprojectsJakob Odersky2018-10-0958-27536/+0
|
* Move remaining swagger utility to rest projectJakob Odersky2018-10-091-164/+0
|
* Fix dependencies in tests to accomodate project splitJakob Odersky2018-10-091-0/+89
|
* Move init package to separate projectJakob Odersky2018-10-097-458/+0
|
* Move database-related functionality to separate projectJakob Odersky2018-10-098-480/+0
| | | | | | | | | | | | | | | | | | | This committ includes a breaking change. The database-specific utility "Converters" trait threw an exception "DatabaseException" defined in the rest package, thus breaking the dependency graph. The solution was to move the DatabaseException class from rest to database and not inherit ServiceExceptio any more. Unfortunately, the rest classes also require the database exception in propagating errors so this funtionality has been removed. The rationale is: 1. Database exceptions are rare and result in 500 errors anyway making the status code opaque to what actual error caused it. 2. In core 2.0, an improved tracing framework will make diagnosing and following database errors easier, thereby attenuating the need to forward details on service exceptions in responses.
* Move REST functionality to separate projectJakob Odersky2018-10-0937-3638/+0
|
* Move storage and messaging to separate projectsJakob Odersky2018-10-0914-1390/+0
|
* Move reporting into separate projectJakob Odersky2018-10-098-560/+0
|
* Move core types into core-types projectJakob Odersky2018-10-0912-1043/+11
| | | | | | | | | Note that xyz.driver.core.FutureExtensions was moved to xyz.driver.core.rest as it (only) contained logic that dealt with service exceptions, something that belongs into core-rest and must not be depended upon by core-types. This is a breaking change.
* Fixes for Alicloud pubsub (#230)Zach Smith2018-10-022-14/+18
| | | | | | * Remove recover from processMessage in StreatBus * Check if queue exists before creating
* Fix `responseToListResponse` for `x-resource-count` header in lowercase (#227)Sergey Nastich2018-09-301-3/+1
|
* Fix `responseToListResponse` for empty non-paginated responses (#225)Sergey Nastich2018-09-221-1/+1
|
* Improve PhoneNumber (#222)Sergey Nastich2018-09-195-10/+116
| | | | | * Add support for extensions * Add PathMatcher and allow parsing JSON from string * Add a number of convenience methods which are to be used instead of `toString`
* Add $ to string interpolator in DnsDiscovery (#220)v2.0.0-M1Zach Smith2018-09-121-1/+1
|
* Remove unused protoype of a reporting busJakob Odersky2018-09-121-34/+0
|
* Move out service discoveryJakob Odersky2018-09-121-4/+3
|
* Add backwards compatibility layer for application contextsJakob Odersky2018-09-121-3/+11
|
* Rearchitect reporting stack to mixin-based structureJakob Odersky2018-09-1212-89/+123
|
* Add authentication method to swagger specJakob Odersky2018-09-121-0/+9
|
* Replace traceparent header, rather than setting all headersJakob Odersky2018-09-121-2/+6
| | | | | The bug manifested itself by missing authentication headers, as these were cleared when the child trace header was set.
* Add updated swagger UI that allows selecting schemeJakob Odersky2018-09-1218-1/+384
|
* Changes to service discovery overrides and storage utilitiesJakob Odersky2018-09-122-20/+17
| | | | | - use objects (instead of object lists) in service discovery overrides - add project ID to bucket names
* Move platform back into init and use a configurable DNS discoveryJakob Odersky2018-09-128-44/+98
|
* Fix typos and naming of actor systemJakob Odersky2018-09-122-4/+3
|
* Add tracing to client HTTP transport and improve tracing tagsJakob Odersky2018-09-1210-77/+157
|
* Fix trace ID generation and improve trace naming schemeJakob Odersky2018-09-124-16/+22
|
* Trait-based initialization and other utilitiesJakob Odersky2018-09-1229-198/+1187
| | | | | | | | | | | | | | | | | | | | | | | | | | | Adds the concept of a 'platform', a centralized place in which environment-specific information will be managed, and provides common initialization logic for most "standard" apps. As part of the common initialization, other parts of core have also been reworked: - HTTP-related unmarshallers and path matchers have been factored out from core.json to a new core.rest.directives package (core.json extends those unmarshallers and matchers for backwards compatibility) - CORS handling has also been moved to a dedicated utility trait - Some custom headers have been moved from raw headers to typed ones in core.rest.headers - The concept of a "reporter" has been introduced. A reporter is a context-aware combination of tracing and logging. It is intended to issue diagnostic messages that can be traced across service boundaries. Closes #192 Closes #195
* Mask InternalServerError and MessageNotExist errors in AliyunBus (#218)v1.14.3Zach Smith2018-09-121-7/+16
|
* RFC Add basicSubscribeWithRestart helper method to StreamBus (#214)Zach Smith2018-09-121-1/+43
| | | | | | | | | | * Add basicSubscribeWithRestart helper method to StreamBus * Include helper for subscribe with Flow * PR comments * Rename methods, call run
* Add `Trimmed` tag and its logic (revisited) (#215)v1.14.2Sergey Nastich2018-09-128-54/+169
| | | | | | | * Add option and iterable converters for transparent `@@ Trimmed` creation. * Move tagging stuff to a separate package - relieve `core.scala` from some extra code. * Add Tagging stuff and publishing section to README.md
* Add `@@ Trimmed` tag for Strings and Names to support by JSON readers (#211)v1.14.1Sergey Nastich2018-09-104-6/+35
|
* Add `Cache-Control: no-cache` to all responses of DriverRoutes. (#190)Sergey Nastich2018-09-103-12/+36
| | | | This change is intended to battle IE (even IE 11) caching all GET responses (and not making any new ones) that don't list those headers
* Various message bus fixes (#212)v1.14.0Jakob Odersky2018-09-107-45/+67
| | | | | 1. Move to pure mixin-based ("stackable traits") pattern. 2. Provide a "CreateOnDemand" mixin that ensures topics and subscriptions have been created before they are used.
* Catch MessageNotExist errors in alicloud subscriptions to prevent errors on ↵v1.13.4Zach Smith2018-09-051-1/+6
| | | | timeout (#210)
* Add http dev.cndriver.xyz to cors whitelist (#209)v1.13.3Zach Smith2018-09-031-0/+4
|
* Swap Left and Right cases in GCP Pubsub createSubscription handler (#207)v1.13.2Zach Smith2018-08-301-6/+6
|
* Add slick columnTypes for java.time.Instant and java.time.LocalDate (#206)v1.13.1Sergey Nastich2018-08-301-1/+14
|
* Upgrade sbt-settings to major version 2 (#201)Jakob Odersky2018-08-2410-50/+79
| | | | | | | | | | | | | | | | This will affect development workflow: instead of running `sbt release` to tag and publish a new version, the release process is now as follows: 1. Create a git tag on a revision that should be published. The tag must be in the format `v[0-9].*` 2. Push the tag to GitHub `git push --tags` 3. CI will build that tag and publish the resulting binary to our artifactory Since the new sbt settings do not enable advanced or risky language features globally anymore (such as higher kinds, reflective calls and implicit conversions), the other changes in this PR either import language features locally or refactor the code to avoid using them entirely.
* Migration to `java.time.Instant` and `java.time.LocalDate`: Part 1 (#200)v1.13.0Sergey Nastich2018-08-246-271/+457
| | | | | | | | | | * Add semi-backwards-compatible JSON formats and path matchers for java.time.Instant and java.time.LocalDate * Use `Clock` in `ApplicationContext` instead of `TimeProvider`, deprecate `TimeProvider` * Add `ChangeableClock` in time package for tests * Add generators for instants and LocalDates
* Add responseToListResponse to RestService (#199)v1.12.4Zach Smith2018-08-221-0/+16
| | | | | | * Add responseToListResponse to RestService * Make pagination optional
* Add UnauthorizedException and catch it in AuthProvider (#198)Zach Smith2018-08-214-1/+13
| | | | | | * Add AuthorizationException and pass it through in authorize directive * Move recover to authenticator method
* Add json formats for country code and currency code (#197)v1.12.3Sergey Nastich2018-08-212-2/+43
|
* Add Aliyun Bus implementation (#193)v1.12.2Zach Smith2018-08-201-0/+139
|
* [RFC] Use akka's built-in authenticate/authorize directives in AuthProvider ↵Zach Smith2018-08-015-66/+88
| | | | | | | | | | (#136) * Use akka's built-in authenticate/authorize directives in AuthProvider * Move AuthProvider companion object to AuthProvider file, move realm to parameter of AuthProvider * Add secondary constructor to maintain ABI compat
* Add Aliyun OSS blob storage support (#187)Zach Smith2018-08-012-2/+110
| | | | | | * Add Aliyun OSS blob storage support * Fix bugs, add convencience constructors, add signed URL support
* Add message bus and topic abstractions (#181)v1.12.0Jakob Odersky2018-07-319-0/+674
|
* Make driver-core ready for Java 11 (#188)v1.11.10Jakob Odersky2018-07-272-16/+7
| | | | - Remove code that accesed internal APIs which have been removed. - Add dependencies to libraries which have become Java modules.
* Implement metrics collection with Kamon (#186)Jakob Odersky2018-07-272-0/+27
|
* Add cndriver.xyz to allowedOrigins (#185)Justin2018-07-261-0/+4
|
* Validate phone numbers when parsing from JSON (#183)v1.11.8Zach Smith2018-07-193-9/+17
| | | | | | * Validate phone numbers when parsing from JSON * Change to intercept for test