Commit Graph

84 Commits

Author SHA1 Message Date
Ricardo Niepel cd2fc468d3 Remove debugging args #207 (#214) 2020-02-07 14:27:05 -08:00
Leon Mai a55504373f specify mvn clean install (#216) 2020-02-07 14:25:00 -08:00
Marcos Reyes 03b548b917 Reducing verbosity by setting log level to INFO in samples and tests (#221)
* Reducing verbosity in logs by setting log level to INFO in examples and tests

* Reducing verbosity in logs by setting log level to INFO in examples and tests

* Delete application.properties

* Delete application.properties

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>
2020-02-07 14:22:49 -08:00
Ricardo Niepel c2d6464ff5
Review changes of 0.2.0 beta (#205)
* Enable Java highlighting for state sample

* Fix Why Pub-Sub link

* add http ingress sample debug instructions

* add invoke grpc sample debug instructions

* align pubsub sample readme w code, fix vscode java arg handling

* add input binding sample debug instructions

* add actors sample debug instructions

* change -D exec to -Dexec

* add sample debugging instructions for Unix

* fix some typos/language
2020-02-06 09:48:33 -08:00
Young Bu Park 0ed7363a3f
upgrade java-sdk version to 0.2.0-beta-2 2020-02-05 14:50:33 -08:00
Yaron Schneider c39c5df84a
Merge pull request #215 from dapr/youngp/ipv4
Use 127.0.0.1 instead of localhost for daprd endpoint
2020-02-05 14:20:19 -08:00
Young Bu Park ac47b09f90 fix merge conflict 2020-02-05 12:30:17 -08:00
Artur Souza 1092093c0c
Update README.md 2020-02-04 09:36:56 -08:00
Artur Souza fb776fd3ca
Update README.md to point to the beta version. 2020-01-31 19:20:53 -08:00
Artur Souza 90ca8f5fcd Excluding examples from deploy command. 2020-01-31 19:01:42 -08:00
Artur Souza b2314c95c0 Merge remote-tracking branch 'upstream/master' into release-0.2.0-beta 2020-01-31 18:29:09 -08:00
Artur Souza 24232eee08
Fix release due to missing javadocs + fix headers. (#195)
* Fixing release pipeline due to Nexus rules.

* Enforcing header and fixing missing header in files.
2020-01-31 18:26:59 -08:00
Artur Souza b8ac3ee2ad Release 0.2.0-beta-1 2020-01-31 16:56:17 -08:00
Leon Mai 969a3cb72d
Wrapping in a 'Data' json object not needed for actor method data (#192)
* Wrapping in a 'Data' json object not needed for actor method data

* cleanup

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>
2020-01-31 16:32:31 -08:00
Artur Souza b2083187df
Add support for metadata in Bindings + fix serialization of output bi… (#186)
* Add support for metadata in Bindings + fix serialization of output binding."

* Remove generics from new bindings method.
2020-01-31 15:20:22 -08:00
Artur Souza 576b5c52ab
Remove unnecessary generic types. (#191) 2020-01-31 14:57:07 -08:00
Artur Souza 7510276a1b
Upgrading checkstyle version + fixing style. (#190)
Co-authored-by: Leon Mai <lemai@microsoft.com>
2020-01-31 14:38:16 -08:00
Artur Souza 187a22725c
Fixing small issue with sleep time in Actor example. (#187) 2020-01-31 14:27:24 -08:00
Juan Jose Herrera c487294143
Fix Metata for Invoke Method (#189) 2020-01-31 13:41:42 -08:00
Haishi2016 d10cd91169
fixes #180 (#183)
Co-authored-by: Artur Souza <artursouza.ms@outlook.com>
2020-01-30 17:44:43 -08:00
Artur Souza 145326a70d
Fix issue where http client builder was always using default timeout. (#184) 2020-01-30 17:34:19 -08:00
Artur Souza 082c4a46fc
Refactoring actor example. (#182)
Co-authored-by: Young Bu Park <youngp@microsoft.com>
2020-01-30 16:32:09 -08:00
Artur Souza 838224f18a
Use SDK in GRPC invoke + add more invoke overloads. (#176) 2020-01-30 13:44:03 -08:00
Marcos Reyes 1af0bee418
Updates in test documentation (#175)
* Updates in test documentation

* Update README.md

* Update StateClient.java

* Update README.md

* Update StateClient.java

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>
2020-01-30 13:31:29 -08:00
Andres Robles b7d6b1cc58
Renaming Adapters, to be just Clients for GRPC and HTTP (#179) 2020-01-30 13:05:42 -08:00
Leon Mai 381fca49fd
Locking not needed (#173) 2020-01-30 12:10:01 -08:00
Artur Souza 0f0a331daf
Adding SpotBugs to build - not to fail yet. (#171)
Co-authored-by: Leon Mai <lemai@microsoft.com>
2020-01-30 00:25:56 -08:00
Leon Mai 313730c308
Fixes checkstyle in existing code and enables error on checkstyle warning (#172)
* checkstyle

* Fix checkstyle and enable build error on checkstyle warning

* Merge from master
2020-01-29 23:19:38 -08:00
Artur Souza 91ac017f7f
IT for actor state + handle actor config. (#163) 2020-01-29 21:50:46 -08:00
Leon Mai e72f1fa919
Actor IT - timers, reminders, turn-based concurrency (#162)
* Actor IT - timers, reminders, turn-based concurrency

IT for actor timer, reminder, turn-based concurrency

* Remove commented out code

* Remove comment

* Update MyActorService.java

* Update ActorTurnBasedConcurrencyIT.java

* Keep the latest stable version of junit. (#169)

* merge with changes in master

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>
2020-01-29 15:17:33 -08:00
Artur Souza 93b990be79
Keep the latest stable version of junit. (#169) 2020-01-29 14:01:39 -08:00
Juan Jose Herrera ebea096bef
Adding Integration Test for Pub Sub over HTTP (#167)
* Adding Integration Test for Pub Sub over HTTP

* Update PubSubIT.java

* Remove unneeded thread sleep

* Serializer is now optional in client builder.

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>
2020-01-29 11:46:58 -08:00
Artur Souza 45fe471c48
Make serializers optional + javadocs about default serializers. (#168) 2020-01-29 11:18:29 -08:00
Artur Souza 0bdf939f91
Removing some dependencies after review. (#164)
Co-authored-by: Leon Mai <lemai@microsoft.com>
2020-01-29 10:09:45 -08:00
Andres Robles dfb3af58a1
Fixing Recursive call for delete state only with key (#166) 2020-01-29 09:10:51 -08:00
Artur Souza 50675532b2
Workaround to get state for actors given runtime API response issue. (#165) 2020-01-28 22:23:24 -08:00
Young Bu Park 62f43e3f38
Add build/license/gitter badges (#161)
Add build/license/gitter badges
2020-01-28 13:03:15 -08:00
Artur Souza a40afafca4
Refactor IT into new jar + use JVM sytem properties (#156)
* Refactor IT into new jar + use JVM sytem properties

* Fixing ITs and silence flaky tests.

* Fix flaky tests.
2020-01-28 11:32:29 -08:00
Artur Souza 7f1d4f09c7
Getting started doc for Java SDK. (#160) 2020-01-27 13:52:33 -08:00
dependabot[bot] d66a438bda Bump jackson-databind from 2.9.9 to 2.9.10.1 in /sdk (#155)
Bumps [jackson-databind](https://github.com/FasterXML/jackson) from 2.9.9 to 2.9.10.1.
- [Release notes](https://github.com/FasterXML/jackson/releases)
- [Commits](https://github.com/FasterXML/jackson/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2020-01-24 14:14:08 -08:00
Artur Souza cf68f24289
Java SDK with all features implemented for milestone 0.4 (#154)
* Basic Dapr HTTP Client for Actors.

* ActorTypeInformation with parsing logic + some stubs.

* Fixing license.

* Adding MethodContext + StateSerializer.

* Add ActorRuntime (#44)

* Add ActorRuntime

* split DaprAsyncClient hierarchy into 2 hierarchies for the different directions of communication

* Rename DaprClientBase to AbstractDaprClient

* Add ActorId

* Encapsulating async call in AbstractDaprClient as a single method. (#46)

* Add ActorMethodInfoMap (#47)

* Add ActorMethodInfoMap

* Add ConverterUtils class (#49)

* Add ConverterUtils + unit test

* Improved async call to okhttp. Former solution just wrapped a blocking call, now we using asynch call and collect the results via callbacks. Mono's are created based on the result. This make more efficient use of the resources since nothing is blocking now. Reformatted according new checkstyle (#48)

* More reformatting to 2 spaces indentation. (#50)

* Add ActorTimer and related (#51)

* Add ActorTimer and related

* cr

* ActorService + DaprStateProvider + some more. (#53)

* Faster JSON building + separate auto-gen jar + tests. (#55)

* closed the response objects and returning a string (#56)

* Add ReminderInfo (#54)

* Add ReminderInfo

* remove extra var

* More Actors Stuff (#57)

* ActorManager

* More work done.

* Adding example for actor runtime service.

* Implements ActorStateManager + fixes + javadocs.

* ActorProxy + some refactoring (#62)

* ActorManager

* More work done.

* Adding example for actor runtime service.

* Implements ActorStateManager + fixes + javadocs.

* Fix OrderManager example in order to process http 201
Change the implement the calls to DAPR using the class AbstractDaprClient because before the change the class always return Mono.Empty
Implementation of the ActorAsyncProxy
Change the name of the Actor Dapr Http Async Client

* Update code with the changes proposed by Artur in the code review

* Changes to support ActorProxy + Fixes.

Co-authored-by: Juan Jose Herrera <35985447+JuanJose-Herrera@users.noreply.github.com>

* Adding new methods for Http Client (#60)

* Adding new methods for Http Client

* Finishing implementation for HttpClient

* Adding JavaDoc and Changing return Type to new Methods

* Using ObjectSerializer and changing Constants values

* Adding gRPC client adapter, to encapsulate gRPC logic from the user (#61)

* Adding a common adapter to be exposed to users, for calling either the gRPC or the HTTP Clients.
Implementing gRPC adapter based on interface.
Moving ActorStateSerializer and renamed to be used as a generic utility for Serializing objects

* Creating a builder for the GrpcClient
Abstracting generic serialize and deserialize methods into a generic base class while leaving Actor specific stuff into the ActorStateSerializer class
Adding Javadocs

* Unit tests for ActorManager + fixes for Timer and Reminder. (#63)

* Add UnitTest to ActorProxyImpl and JaCoCo (coverage tool) implementation (#67)

* Change from unwrapMethodResponse to deserialize, because the response from an actor method is not wrapped in "Data" object
Add Unit test for the ActorProxy class

* #24 Implement more testing to the ActorProxyImpl and refactor how we manage the errors with Mono
#20 Add the coverage tool JaCoCo, the rules are commented at this moment in order to allow to execute the examples at this moment, if we enable the rules, the compilation fails.

* Enable rules for unit test coverage with a minimum of 0 in order to allow the developers to success compile, the minimum should be set to .8 before the projects ends

* Use the unwrapMethodResponse of the serilizer in order to deserilize actor responses.

* Reverting ActorProxyImpl.java

There is not need to change ActorProxyImpl since the previous change to not wrap it with the "data" structure was incorrect.

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Starting package to handle SpringBoot integration. (#69)

* Request body must be null on get for okhttp, empty body does not work… (#70)

* Request body must be null on get for okhttp, empty body does not work.  Also, expose the ActorStateManager methods that ought to be exposed to user.

* Make ctor package private and use equals for string compare

* Refactoring HTTP Client and creating Client HTTP Adapter (#68)

* Refactoring HTTP Client to follow same pattern as the GRPC Client.
Creating DaprClientHttpAdapter to be exposed to the users.
Refactor all uses of the http Client to use the adapter instead following composition rather than inheritance.
Dealing with conflicts

* Renaming AppToDaprHttpAsync to AppToDaprHttpAsyncClient changed previously by mistake

* Refactor Adapters to centralize all generic and actor specific functionality in the same place, having a single entry point for all communications to DAPR.
Leaving GRPC Adapter implemented, but without the possibility to create an instance of it.
Fixing Test cases

* Addressing PR comments

* PubSub + related fixes. (#71)

* Fixing issue regarding GET and DELETE method (#76)

* Unit tests for PubSub + JavaDocs. (#75)

* Invoke service + unit tests. (#78)

* Java sdk wip (#77)

* Fixing issue regarding GET and DELETE method

* Adding unit test for DaprHttp.java

* Adding test scope

* Renaming a property and fixing conflict to merge.

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* pubsub sample needs update for listener interface (#80)

* Fix bindings + add samples (#81)

* Fix binding and add samples

* Fix sample command line

* update comment for name change

* lowercase d matches runtime, though it looks like it is case insensitive

* Spliting Actor client and runtime into a separate jar. (#83)

* Unit testing + bug fixing in GRPC Adapter (#79)

* Adding mockito plugin to be able to mock final classes
Increasing test coverage for ObjectSerializer
Fixing bug in GRPC Adapter while creating the envelopes, found during unit testing.

* First step into returning Http Headers as part of the response for the DaprClientHttpAdapter
Updating State object to match the API.
Fixing Broken Unit Tests and increasing coverage for DaprClientGrpcAdapter

* Adding documentation, fixing typos and renaming support method to be more descriptive.

* Addressing PR comments
Increasing test coverage
Fixing Merge conflicts

* Addressing PR comments

* Addressing comments regarding where to build the query parameters forthe HTTP Client calls. (#84)

* Addressing comments regarding where to build the query parameters for the HTTP Client calls.

* Making map immutable while also preventing a NPE

* Fixing DaprHttp and its tests. (#93)

* Increasing test coverage for DaprClientGrpcAdapter (#94)

* Upload jacoco test coverage report to artifact storage (#95)

* set jacoco report output dir

* upload test report

* add dapr version info

* #26 Integretion Testing Initial Example (#74)

* #26 Add Hello World Integration Testing working on Windows, need work to work on MAC and Linux

* #26 Add new Integration Test to test DAPR state functionality

* #26 Add Hello World Integration Testing working on Windows, need work to work on MAC and Linux

* Update Integration Testing getting free ports automatically

* #26 Refractor to use a base class for all the integration tests

* #26 Make StateOptions as optional in order to not throw a null pointer exception

* #26 Remove empty lines and correct the ident

* Adding license to DaprIntegrationTestingRunner

Co-authored-by: Young Bu Park <youngp@microsoft.com>
Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Fixing and finishing unit tests (#97)

* Fixing and finishing unit tests

* Fixing styling Issues and adding new test

* Unit tests for stateful actors + fixes. (#104)

* Receiving the StateOptions on save as part of the State, to comply with the DAPR API (#105)

* Receiving the StateOptions on save as part of the State, to comply with the DAPR API

* #26 Add integration test for Concurrency funtionality in the states module

Co-authored-by: Juan Jose Herrera <35985447+JuanJose-Herrera@users.noreply.github.com>
Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Deploy Jar packages to Nexus via CI (#106)

* Add SNAPSHOT suffix to version

* set deployment setup

* add ossrh  repostiory

* OSSRH setting

* add deployment steps

* exclude examples jar

* remove condition

* exclude spring boot pkg

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* deactivate should not call save (#108)

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Fixing bug, where call should be deferred instead of async (#102)

* Fixing bug, where call should be deferred instead of async

* Removing unused pool property
Returning null as response body if empty response is found.
Adding Test case for validating callback is executed when expected.

* Fixing assertion based on previous changes

* Adding test case to verify that the call to grpc only happens when the requestor block the thread, instead of in parallel immediately after calling the methods in the adapter.
Documenting complex test case

* Fixing merge conflicts

* Documenting complex test case

* Disable GPG sign by default (#111)

* [CD] Fix gpg private key import (#113)

* fix gpg key import process

* add GPG_TTY env setting

* revert

* rename dapr-sdk to dapr-actors

* fix

* Fix GPG plugin

* [CD] Conditional SNAPSHOT and final release (#115)

* Release pkg based on tag and branch

* Update build.yml

* Update build.yml

* Creating unit tests for HttpAdapter + Adding junit 5 dependency + Reformating code (#112)

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Removing springboot jar and adding some unit tests for ActorRuntime. (#114)

* Release SNAPSHOT pkg for every build (#118)

* Release SNAPSHOT build every build

* fix

* Fix sample (#119)

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Unit tests for actors, no state. (#117)

* actor unit tests, no state

clean up a bit

* Rename class

* Fix merge

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Moving io.dapr.runtime to test + fixing examples accordingly. (#121)

* mvn integration-test doesn't work w/o this plugin (#122)

* Resolving conflict for PR #110 (#130)

* Renaming State domain object.
Removing duplicate use of State Options.
Adding custom serialize and deserialize classes for StateOptions objects.

* #26 Refractor StateOptions to clean unused code

* Fixing merge issues.

* Fixing unit test for DaprClientHttpAdapterTest after refactoring.

Co-authored-by: Juan Jose Herrera <35985447+JuanJose-Herrera@users.noreply.github.com>

* Refactor StateOptions and add IT consistency testing (#110)

* Renaming State domain object.
Removing duplicate use of State Options.
Adding custom serialize and deserialize classes for StateOptions objects.

* #26 Refractor StateOptions to clean unused code

* Fixing merge issues.

* #26 Add integration test for states using Retry policies

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Fix IT issues, to run the integration test rember to add the parameter skipITs=false (#131)

* Addresses multiple items from design review (#124)

* Use byte[] for customer data and serialized data.
Fixes for actor demo.

* Simplifying ObjectSerializer + handling CloudEvent properly.

* Split DaprClient into 3 parts to hide actor APIs.

* Remove Actor "dummy" interface.

* Supports custom serializer.

* Change seriaizer to receive Object directly.

* Handling custom serialization in State APIs + enhancements to the state APIs.

* Addressing small comment on Mono chain in ActorManager.

* Make serializer mandatory, throwing exception when null.

* Fix arg parsing problem -Dexec.args= seems to not allow hyphens inside (#136)

* Fix bug in Actor due to timer serialization. (#139)

* Missing block (#140)

* Install local test kafka before running build and tests (#142)

* local test kafka docker-compose yaml

* add kafka install step

* Separate serializer for state. (#135)

* Add gRPC State Integration Test (#138)

* Add GRP State Integration Test

* Explain ignored test cases for GRPC

* Explain ignored test cases for GRPC

* Update DaprClientTestBuilder.java

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Actor Activation / Deactivation Integartion Test (#144)

* Adding common setup for starting dapr applications in Integration Tests.
Adding integration test for Actor Activation and Reactivation.

* Changing the way parameters are sent to the application running under Dapr in ITs to fix issue found in Ubuntu about wrong parsing.
Moving logic of the ActivationClient into the IT class

* Fixing compilation issues in test due to rebase from upstream.

* Addressing PR comments

* Adding more unit test to reach 80% Coverage (#149)

* Adding checkstyle + fix style in sdk-actos. (#146)

* Update debug instructions since LB is not needed. (#150)

* Add E2E testing for bindings (#148)

* Add GRP State Integration Test

* Explain ignored test cases for GRPC

* Explain ignored test cases for GRPC

* Update DaprClientTestBuilder.java

* Add binding E2E testing.

* Add fix binding E2E testing after merge with new changes

* Remove example comments

Co-authored-by: Artur Souza <artursouza.ms@outlook.com>

* Adding documentation for examples (#153)

Co-authored-by: Leon Mai <lemai@microsoft.com>
Co-authored-by: ji11er <57505038+ji11er@users.noreply.github.com>
Co-authored-by: Juan Jose Herrera <35985447+JuanJose-Herrera@users.noreply.github.com>
Co-authored-by: mestizoLopez <ing.javierlg@gmail.com>
Co-authored-by: Andres Robles <15348598+AndresRoblesMX@users.noreply.github.com>
Co-authored-by: Young Bu Park <youngp@microsoft.com>
Co-authored-by: Marcos Reyes <59033058+marcosreyes05@users.noreply.github.com>
2020-01-24 12:49:56 -08:00
Young Bu Park b63fa48954
Initial commit of GitHub Actions CI (#91)
* Initial commit of gh actions yaml

* Add dapr runtime install

* show dapr install version

* add java_sdk_wip branch for pr build
2020-01-13 16:22:12 -08:00
Artur Souza 43bf1fde7c
Merge pull request #40 from artursouza/doc_debug
Documentation on how to debug Java apps or SDK.
2019-12-13 17:12:31 -08:00
Artur Souza 13b00439eb
Get pen for Win and MacOS + alt for VSCode 2019-12-11 15:50:21 -08:00
Artur Souza 4712988a44
Note on alternate order of commands to debug 2019-12-11 12:48:13 -08:00
Yaron Schneider 7512824d28
Merge branch 'master' into doc_debug 2019-12-11 11:19:20 -08:00
Artur Souza 05eb058492 Documentation on how to debug Java apps or SDK. 2019-12-11 00:05:51 -08:00
Artur Souza ab5dcca641
Merge pull request #38 from dapr/readme1
link maven install webpage and clarify version
2019-12-10 11:05:04 -08:00
LM 1cdd49c92c link maven and clarify version 2019-12-10 09:14:39 -08:00
Artur Souza 900eacc5ce
Merge pull request #27 from artursouza/grpc_examples
New example for Dapr's Grpc invoke using Java.
2019-12-09 10:23:41 -08:00