java-design-patterns/presentation/etc/presentation.urm.puml
EdisonE3 f1feb3f6a0
feature: Implement Presentation Model Pattern ()
*  initial all componets

*  add src and tests

*  add diagram

*  add README

*  add README

*  change pom.xml

*  change pom.xml

*  change pom.xml

*  update pom.xml

*  change some code smell

*  change some code smell

*  update test

*  add javadoc

*  remove author tag

*  add lombok @AllArgsConstructor

*  fix code converge

*  fix code converge

*  fix code converge

*  add javadoc

*  fix code smell

*  fix code smell

*  add log information

*  remove unused import

*  add javadoc and more test

*  modify test

*  fix checkstyle

*  remove useless code and add more javadoc and test.

*  add package-info.java.

*  add package-info.java.

*  add more test.

*  fix code smell.

*  fix code smell and increase code coverage.

*  fix code smell.

*  update README.md

*  update README.md

*  make this demo better

*  satisfy checkstyle

*  make some field static.

*  make some fields static.

*  rename some fields static.

* Delete package-info.java

Co-authored-by: Subhrodip Mohanta <subhrodipmohanta@gmail.com>
2021-05-11 19:16:11 +05:30

59 lines
1.6 KiB
Plaintext

@startuml
package com.iluwatar.presentation {
class Album {
~ artist : String
~ composer : String
~ isClassical : boolean
~ rowId : int
~ title : String
+ Album(rowId : int, title : String, artist : String, isClassical : boolean, composer : String)
}
class App {
+ App()
+ main(args : String[]) {static}
}
class DsAlbum {
+ albums : List<Album>
+ albumsCache : List<Album>
+ DsAlbum()
+ acceptChanges()
+ addAlbums(rowId : int, title : String, artist : String, isClassical : boolean, composer : String)
}
class PresentationMod {
- data : DsAlbum
- selectedAlbum : Album
- selectedAlbumNumber : int
+ PresentationMod(data : DsAlbum)
+ albumDataSet() : DsAlbum {static}
+ getAlbumList() : String[]
+ getArtist() : String
+ getComposer() : String
+ getIsClassical() : boolean
+ getTitle() : String
+ setArtist(value : String)
+ setComposer(value : String)
+ setIsClassical(value : boolean)
+ setSelectedAlbumNumber(selectedAlbumNumber : int)
+ setTitle(value : String)
}
class View {
~ albumList : JList<String>
~ apply : JButton
~ cancel : JButton
~ chkClassical : JCheckBox
~ model : PresentationMod
~ notLoadView : boolean
~ txtArtist : TextField
~ txtComposer : TextField
~ txtTitle : TextField
+ View()
+ createView()
+ loadFromPMod()
+ saveToPMod()
}
}
PresentationMod --> "-selectedAlbum" Album
View --> "-model" PresentationMod
DsAlbum --> "-albums" Album
PresentationMod --> "-data" DsAlbum
@enduml