feature: Implement Presentation Model Pattern (#1710)
* #415 initial all componets * #415 add src and tests * #415 add diagram * #415 add README * #415 add README * #415 change pom.xml * #415 change pom.xml * #415 change pom.xml * #415 update pom.xml * #415 change some code smell * #415 change some code smell * #415 update test * #415 add javadoc * #415 remove author tag * #415 add lombok @AllArgsConstructor * #415 fix code converge * #415 fix code converge * #415 fix code converge * #415 add javadoc * #415 fix code smell * #415 fix code smell * #415 add log information * #415 remove unused import * #415 add javadoc and more test * #415 modify test * #415 fix checkstyle * #415 remove useless code and add more javadoc and test. * #415 add package-info.java. * #415 add package-info.java. * #415 add more test. * #415 fix code smell. * #415 fix code smell and increase code coverage. * #415 fix code smell. * #415 update README.md * #415 update README.md * #415 make this demo better * #415 satisfy checkstyle * #415 make some field static. * #415 make some fields static. * #415 rename some fields static. * Delete package-info.java Co-authored-by: Subhrodip Mohanta <subhrodipmohanta@gmail.com>
This commit is contained in:
59
presentation/etc/presentation.urm.puml
Normal file
59
presentation/etc/presentation.urm.puml
Normal file
@ -0,0 +1,59 @@
|
||||
@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
|
Reference in New Issue
Block a user