/
githubmirror
/
java-design-patterns
Обзор
Документация
Войти
/
githubmirror
/
java-design-patterns
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
role-object/etc/role-object.urm.puml
60 строк
2 KB
Ilkka Seppälä
#1113 Add uml-reverse-mapper plugin
07 дек 2019, 19:03
07 дек 2019, 19:03
0685a50
Код
Авторство
О чём код?
@startuml package com.iluwatar.roleobject { class ApplicationRoleObject { - logger : Logger {static} + ApplicationRoleObject() + main(args : String[]) {static} } class BorrowerRole { - name : String + BorrowerRole() + borrow() : String + getName() : String + setName(name : String) } abstract class Customer { + Customer() + addRole(Role) : boolean {abstract} + getRole(Role, Class<T extends Customer>) : Optional<T extends Customer> {abstract} + hasRole(Role) : boolean {abstract} + newCustomer() : Customer {static} + newCustomer(role : Role[]) : Customer {static} + remRole(Role) : boolean {abstract} } class CustomerCore { - roles : Map<Role, CustomerRole> + CustomerCore() + addRole(role : Role) : boolean + getRole(role : Role, expectedRole : Class<T extends Customer>) : Optional<T extends Customer> + hasRole(role : Role) : boolean + remRole(role : Role) : boolean + toString() : String } abstract class CustomerRole { + CustomerRole() } class InvestorRole { - amountToInvest : long - name : String + InvestorRole() + getAmountToInvest() : long + getName() : String + invest() : String + setAmountToInvest(amountToInvest : long) + setName(name : String) } enum Role { + Borrower {static} + Investor {static} - logger : Logger {static} - typeCst : Class<? extends CustomerRole> + instance() : Optional<T extends CustomerRole> + valueOf(name : String) : Role {static} + values() : Role[] {static} } } BorrowerRole --|> CustomerRole CustomerCore --|> Customer CustomerRole --|> CustomerCore InvestorRole --|> CustomerRole @enduml