2016-08-30 13:29:12 +02:00
|
|
|
@startuml
|
|
|
|
package com.iluwatar.threadpool {
|
2016-11-26 12:51:06 +01:00
|
|
|
class App {
|
|
|
|
- LOGGER : Logger {static}
|
|
|
|
+ App()
|
|
|
|
+ main(args : String[]) {static}
|
|
|
|
}
|
|
|
|
class CoffeeMakingTask {
|
|
|
|
- TIME_PER_CUP : int {static}
|
|
|
|
+ CoffeeMakingTask(numCups : int)
|
|
|
|
+ toString() : String
|
|
|
|
}
|
|
|
|
class PotatoPeelingTask {
|
|
|
|
- TIME_PER_POTATO : int {static}
|
|
|
|
+ PotatoPeelingTask(numPotatoes : int)
|
|
|
|
+ toString() : String
|
|
|
|
}
|
2016-08-30 13:29:12 +02:00
|
|
|
abstract class Task {
|
|
|
|
- ID_GENERATOR : AtomicInteger {static}
|
|
|
|
- id : int
|
|
|
|
- timeMs : int
|
|
|
|
+ Task(timeMs : int)
|
|
|
|
+ getId() : int
|
|
|
|
+ getTimeMs() : int
|
|
|
|
+ toString() : String
|
|
|
|
}
|
2016-09-18 17:51:09 +03:00
|
|
|
class Worker {
|
2016-11-26 12:51:06 +01:00
|
|
|
- LOGGER : Logger {static}
|
2016-09-18 17:51:09 +03:00
|
|
|
- task : Task
|
|
|
|
+ Worker(task : Task)
|
|
|
|
+ run()
|
|
|
|
}
|
2016-08-30 13:29:12 +02:00
|
|
|
}
|
|
|
|
Worker --> "-task" Task
|
|
|
|
CoffeeMakingTask --|> Task
|
2016-09-18 17:51:09 +03:00
|
|
|
PotatoPeelingTask --|> Task
|
2016-08-30 13:29:12 +02:00
|
|
|
@enduml
|