Skip to content

Latest commit

 

History

History
71 lines (62 loc) · 2.28 KB

README.md

File metadata and controls

71 lines (62 loc) · 2.28 KB

xCherry Java SDK

Coverage Status Build status

Java SDK for xCherry

Requirements

  • Java 1.8+

Development Plan

1.0

  • StartProcessExecution API
    • Basic
    • ProcessIdReusePolicy
    • Process timeout
    • Retention policy after closed
  • Executing wait_until/execute APIs
    • Basic
    • Parallel execution of multiple states
    • StateOption: WaitUntil/Execute API timeout and retry policy
    • AsyncState failure policy for recovery
  • StateDecision
    • Single next State
    • Multiple next states
    • Force completing process
    • Graceful completing process
    • Force fail process
    • Dead end
    • Conditional complete process with checking queue emptiness
  • Commands
    • AnyOfCompletion and AllOfCompletion waitingType
    • TimerCommand
  • LocalQueue
    • LocalQueueCommand
    • MessageId for deduplication
    • SendMessage API without RPC
  • LocalAttribute persistence
    • LoadingPolicy (attribute selection + locking)
    • InitialUpsert
  • GlobalAttribute persistence
    • LoadingPolicy (attribute selection + locking)
    • InitialUpsert
    • Multi-tables
  • RPC
  • API error handling for canceled, failed, timeout, terminated
  • StopProcessExecution API
  • WaitForStateCompletion API
  • ResetStateExecution for operation
  • DescribeProcessExecution API
  • WaitForProcessCompletion API
  • History events for operation/debugging

Future

  • Skip timer API for testing/operation
  • Dynamic attributes and queue definition
  • State options overridden dynamically
  • Consume more than one messages in a single command with FIFO/BestMatch policies
  • WaitingType: AnyCombinationsOf
  • GlobalQueue
  • CronSchedule
  • Batch operation
  • DelayStart
  • Caching (with Redis, etc)
  • Custom Database Query
  • SearchAttribute (with ElasticSearch, etc)
  • ExternalAttribute (with S3, Snowflake, etc)