{"id":17274488,"url":"https://github.com/idugalic/axon-polymorphism-demo","last_synced_at":"2025-03-26T13:41:25.615Z","repository":{"id":113630894,"uuid":"249061386","full_name":"idugalic/axon-polymorphism-demo","owner":"idugalic","description":"Axon and OOP (Inheritance, Polymorphism)","archived":false,"fork":false,"pushed_at":"2020-07-10T12:05:34.000Z","size":20,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-31T15:11:11.469Z","etag":null,"topics":["axonframework","ddd","inheritance","oop"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/idugalic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-21T21:09:57.000Z","updated_at":"2020-07-10T12:05:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"8ed93122-e921-4095-b1cc-3b79ce239bd1","html_url":"https://github.com/idugalic/axon-polymorphism-demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idugalic%2Faxon-polymorphism-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idugalic%2Faxon-polymorphism-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idugalic%2Faxon-polymorphism-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idugalic%2Faxon-polymorphism-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/idugalic","download_url":"https://codeload.github.com/idugalic/axon-polymorphism-demo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245665876,"owners_count":20652679,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["axonframework","ddd","inheritance","oop"],"created_at":"2024-10-15T08:54:02.263Z","updated_at":"2025-03-26T13:41:25.594Z","avatar_url":"https://github.com/idugalic.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# [projects](http://idugalic.github.io/projects)/axon-polymorphism-demo\n\nInheritance and polymorphism are important concepts in object-oriented programming. \nYou are able to [use these concepts in Axon Framework](https://docs.axoniq.io/reference-guide/implementing-domain-logic/command-handling/aggregate-polymorphism) (since version 4.3).\n\nPlease mind that this is a demo application, and that it does not favor inheritance over composition in general. \nIt demonstrate the usage of these OOP concepts in Axon applications from the technical point of view.\n\nDon't be caught only using the \"is-a-kind-of\" guideline for inheritance - it can lead you down a very timely and expensive path ;)\n\n## Development\n\nThis project is driven using [maven].\n\n### Run Axon Server\n\nYou can [download](https://download.axoniq.io/axonserver/AxonServer.zip) a ZIP file with AxonServer as a standalone JAR. This will also give you the AxonServer CLI and information on how to run and configure the server.\n\nAlternatively, you can run the following command to start AxonServer in a Docker container:\n\n```\n$ docker run -d --name axonserver -p 8024:8024 -p 8124:8124 axoniq/axonserver\n```\n\n### Run locally\n\nYou can run the following command to start your project locally:\n\n```\n$ ./mvnw spring-boot:run\n```\n\n### Run tests\n\nThis project comes with some rudimentary tests as a good starting\npoint for writing your own. Use the following command to execute the\ntests using Maven:\n\n```\n$ ./mvnw test\n```\n---\nCreated with :heart: by [Ivan Dugalic](https://idugalic.github.io/)\n\n[maven]: https://maven.apache.org/ (Maven)\n[axon]: https://axoniq.io/ (Axon)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidugalic%2Faxon-polymorphism-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fidugalic%2Faxon-polymorphism-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidugalic%2Faxon-polymorphism-demo/lists"}