Model is described by 21168 lines of xml and contains:
346 Events
167 DomainEvents
179 ActorEvents
49 Views
View Aggregate contains 10 fields and 3 queries
View Attribute contains 2 fields and 0 queries
View DomainEvent contains 6 fields and 2 queries
View DomainEventVersion contains 3 fields and 0 queries
View EventAttribute contains 2 fields and 0 queries
View EventHandler contains 3 fields and 0 queries
View Behavior contains 12 fields and 2 queries
View BehaviorTrigger contains 3 fields and 0 queries
View TriggerMapping contains 2 fields and 0 queries
View FlowVariable contains 2 fields and 0 queries
View BehaviorProcessor contains 15 fields and 0 queries
View EmitEventMapping contains 2 fields and 0 queries
View DmnInputMapping contains 2 fields and 0 queries
View DmnOutputMapping contains 2 fields and 0 queries
View TestCase contains 10 fields and 0 queries
View TestCaseInput contains 3 fields and 0 queries
View ExpectedField contains 4 fields and 0 queries
View Build contains 6 fields and 2 queries
View Command contains 13 fields and 2 queries
View Domain contains 7 fields and 2 queries
View RegisteredEvent contains 9 fields and 2 queries
View GlobalComponent contains 7 fields and 2 queries
View KeyValue contains 2 fields and 0 queries
View Notifier contains 10 fields and 2 queries
View NotifierTrigger contains 3 fields and 0 queries
View Activity contains 37 fields and 0 queries
View ActivityDmnInput contains 2 fields and 0 queries
View ActivityDmnOutput contains 2 fields and 0 queries
View GraphEventIndex contains 2 fields and 0 queries
View GraphNode contains 6 fields and 0 queries
View GraphData contains 4 fields and 0 queries
View Project contains 17 fields and 2 queries
View ProjectConfiguration contains 5 fields and 2 queries
View MetaData contains 4 fields and 0 queries
View Pipeline contains 2 fields and 0 queries
View Deployment contains 7 fields and 0 queries
View PublicProfile contains 2 fields and 1 queries
View PrivateProfile contains 8 fields and 1 queries
View BillingInfo contains 3 fields and 1 queries
View UserOverview contains 2 fields and 1 queries
View UserSummary contains 2 fields and 0 queries
View View contains 10 fields and 2 queries
View ViewField contains 7 fields and 0 queries
View ViewSource contains 6 fields and 0 queries
View ViewMapping contains 5 fields and 0 queries
View ViewQuery contains 8 fields and 0 queries
View QueryFilter contains 2 fields and 0 queries
View WorkSpace contains 7 fields and 1 queries
View BusinessRole contains 7 fields and 0 queries
1 Projections:
Projection Project.getGraph contains 2 inputs and returns GraphData View
3 Subdomains
Subdomain Core contains 8 aggregates
Aggregate Aggregate contains 42 commands, 41 event handlers and 9 fields
Aggregate Command contains 6 commands, 6 event handlers and 11 fields
Aggregate Domain contains 6 commands, 6 event handlers and 4 fields
Aggregate GlobalComponent contains 5 commands, 17 event handlers and 6 fields
Aggregate Notifier contains 60 commands, 60 event handlers and 8 fields
Aggregate Project contains 11 commands, 11 event handlers and 10 fields
Aggregate View contains 16 commands, 16 event handlers and 8 fields
Aggregate Workspace contains 5 commands, 5 event handlers and 5 fields
Subdomain Automation contains 1 aggregates
Aggregate Build contains 2 commands, 2 event handlers and 6 fields
Subdomain Profile contains 1 aggregates
Aggregate User contains 1 commands, 2 event handlers and 5 fields
19 Notifiers
Notifier CreateBuildPackage contains 1 triggers and 5 activities
Notifier CleanupDomain contains 1 triggers and 3 activities
Notifier RestoreDomain contains 1 triggers and 4 activities
Notifier CleanupProject contains 1 triggers and 5 activities
Notifier CleanupCommand contains 1 triggers and 7 activities
Notifier CleanupAggregate contains 1 triggers and 5 activities
Notifier RefactorDomain contains 1 triggers and 4 activities
Notifier RefactorProject contains 1 triggers and 4 activities
Notifier RefactorCommand contains 1 triggers and 8 activities
Notifier RefactorAggregate contains 1 triggers and 4 activities
Notifier RefactorMoveAggregate contains 1 triggers and 5 activities
Notifier RefactorGlobal contains 1 triggers and 5 activities
Notifier InitializeSystemUser contains 1 triggers and 1 activities
Notifier FlushCdn contains 1 triggers and 1 activities
Notifier InitializeWorkspaceGroups contains 1 triggers and 8 activities
Notifier GrantAccessToBusinessRole contains 1 triggers and 3 activities
Notifier RevokeAccess contains 1 triggers and 3 activities
Notifier ChangeRole contains 1 triggers and 4 activities
Notifier SendInvite contains 1 triggers and 6 activities
GUI:
116 Widgets
47 Screens
Global Components:
2 Expressions
extractRoleFromDrn ActorEventRole
extractProjectFromDrn TriggerKeyField
53 Patterns (regex)
PascalCase ^([A-Z]{1}[a-z]+)+$
Uuid ^[a-z0-9]{8}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{12}$
CamelCase ^[a-z]+([A-Z]{1}[a-z]+)*$
LowerCase ^[a-z]+$
NotEmptyString [a-zA-Z]
DeleteMode ^(soft|hard)$
UserHash ^D[0-9]+$
WorkspaceDrn ^D[0-9]+:[a-z]+$
BusinessRole ^(administrator|manager|developer)$
ProjectName ^([A-Z]{1}[a-z]+)+$
ProjectDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+
BuildDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+:build:.*
SubDomainName ^([A-Z]{1}[a-z]+)+$
DomainDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+:domain:([A-Z]{1}[a-z]+)+$
AggregateName ^([A-Z]{1}[a-z]+)+$
AggregateDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+:domain:([A-Z]{1}[a-z]+)+:([A-Z]{1}[a-z]+)+$
AggregateFieldType ^(String|Int|Float|Boolean|StringList|FloatList|IntList|Map|ObjectList)$
AggregateFieldName [a-z]+([A-Z]{1}[a-z]+)*
FlowName ([A-Z]{1}[a-z]+)+
FlowVariable [a-z]+([A-Z]{1}[a-z]+)*
FlowVariableType ^(String|Number|Boolean)$
ScriptMethod ^[A-z_]+$
EventName ^([A-Z]{1}[a-z]+)+$
DomainEventName ^([A-Z]{1}[a-z]+)+$
EventFieldName ^[a-z]+([A-Z]{1}[a-z]+)*$
EventFieldType ^(String|Int|Float|Boolean|NestedString|NestedInt|NestedFloat|NestedBoolean)$
EventHandlerOperand ^(set|append|remove|add|subtract|put|patch|python-expression)$
TestInputType ^(String|Number|Boolean|NestedObject)$
TestExpectedType ^(String|Number|Boolean)$
GlobalName ^([A-Z]{1}[a-z]+)+$
GlobalDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+:global:(actorexpression|triggerexpression|dmn|code|template|dependency|pattern):([A-Z]{1}[a-z]+)+(\.[a-z]{2,5})?$
DelimitidString ^[0-z]+(;[0-z]+)*$
NotifierName ^([A-Z]{1}[a-z]+)+$
NotifierDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+:notifier:([A-Z]{1}[a-z]+)+$
HttpMethod ^(GET|POST|PATCH|HEAD|OPTIONS|DELETE|PUT)$
DraftsmanDictionary ^ \{.*\:?.*\}$
ViewName ^([A-Z]{1}[a-z]+)+$
ViewDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+:view:([A-Z]{1}[a-z]+)+$
SourceEventName ^(SNAPSHOT|([A-Z]{1}[a-z]+)+)$
ProcessingStrategy ^(item|dictionary)$
ViewMappingOperand ^(set|append|remove|add|subtract|put|items|convert_items|python-expression|apply-patch)$
ViewFieldTypes ^(String|Int|Float|Boolean|StringList|FloatList|IntList)$
ViewFieldName [a-z]+([A-Z]{1}[a-z]+)*
QueryParam [a-z]+([A-Z]{1}[a-z]+)*
ActorAuthorization ^(authenticated|role|user)$
RelationAuthorization ^(authenticated|role)$
QueryOperand ^(equals|not_equals|less_than|greater_than|less_than_equals|greater_than_equals)$
CommandName ([A-Z]{1}[a-z]+)+
CommandDrn ^D[0-9]+:[a-z]+:([A-Z]{1}[a-z]+)+:command:([A-Z]{1}[a-z]+)+$
GraphqlNamespace ^([A-Z]{1}[a-z]+)+(\.([A-Z]{1}[a-z]+)+)*$
GraphqlMethodName ^[a-z]+([A-Z]{1}[a-z]+)*$
CommandFieldName ^[a-z]+([A-Z]{1}[a-z]+)*(\.[a-z]+([A-Z]{1}[a-z]+)*)*$
CommandFieldType ^(String|Int|Float|Boolean|NestedString|NestedInt|NestedFloat|NestedBoolean)$
1 GUI Components
analytics custom_gui_component/analytics.html
4 TestScenarios:
Scenario [01 Tutorial Model] contains 60 activities
Scenario [02 Rename Resources] extends [01 Tutorial Model] with 3 activities
Scenario [03 Build Project] extends [01 Tutorial Model] with 9 activities
Scenario [04 Delete Project] extends [01 Tutorial Model] with 1 activities
Created and executed 216 tests.
All tests successful: True
Lines of code: 111837 (.py=18866, .yml=22460, .html=46564 and unittests=23947)
zwj+h