java-design-patterns/composite-view/etc/composite-view.urm.puml
Kevin 7652b11bca
new pattern: Issue#1264: Implemented Composite-View Pattern (#1923)
* initial commit, created package, README, pom, and directory structure.

* Issue#1264, continue working on JavaBeans, added getters, setters, and private fields. Created test file for JavaBeans.

* set up junit for tests folder.

* Issue#1264, set up local server and added web-application framework to composite-view to allow the JSP to run on a local Tomcat container. Wrote unit tests for Java-bean class, working on JSP pages.

* Issue#1264, Added forwarding functionality to servlet and main composite view page.

* Issue#1264, Finished composite view template in newsDisplay.jsp and created atomic sub-view components in businessNews.jsp, header.jsp, localNews.jsp, scienceNews.jsp, sportsNews.jsp, worldNews.jsp. Composite view page renders correctly, atomic views are inserted in and substituted in the template page depending on request parameters.

* Issue#1264, Added all views, updated README.md with documentation.

* Issue#1264, updated README.md, moved images folder into etc folder.

* Issue#1264, removed build artifacts from tracked files.

* Issue#1264, updated README.md

* Issue#1264, updated README.md

* Issue#1264, removed unused import, made AppServlet class final, changed to .equals() for string comparison.

* Issue#1264, in AppServlet, put the output writing into try blocks to ensure writers are closed.

* Issue#1264, added tests for Servlet, coverage up to 100%, used lombok to reduce boilerplate setters and getter, updated README.md with better grammar, appropriate tags and links to related patterns. Updated pom.xml to get rid of superfluous lines.

* Issue#1264, made changes as requested in README.md.

Co-authored-by: Ilkka Seppälä <iluwatar@users.noreply.github.com>
2022-01-18 21:51:53 +02:00

29 lines
973 B
Plaintext

@startuml
package com.iluwatar.compositeview {
class ClientPropertiesBean {
- BUSINESS_PARAM : String {static}
- DEFAULT_NAME : String {static}
- NAME_PARAM : String {static}
- SCIENCE_PARAM : String {static}
- SPORTS_PARAM : String {static}
- WORLD_PARAM : String {static}
- businessInterest : boolean
- name : String
- scienceNewsInterest : boolean
- sportsInterest : boolean
- worldNewsInterest : boolean
+ ClientPropertiesBean()
+ ClientPropertiesBean(req : HttpServletRequest)
+ getName() : String
+ isBusinessInterest() : boolean
+ isScienceNewsInterest() : boolean
+ isSportsInterest() : boolean
+ isWorldNewsInterest() : boolean
+ setBusinessInterest(businessInterest : boolean)
+ setName(name : String)
+ setScienceNewsInterest(scienceNewsInterest : boolean)
+ setSportsInterest(sportsInterest : boolean)
+ setWorldNewsInterest(worldNewsInterest : boolean)
}
}
@enduml