@@ -53,6 +53,18 @@ public final class ViewSet {
5353 this.model = model;
5454 }
5555
56+ /**
57+ * Creates a custom view.
58+ *
59+ * @param key the key for the view (must be unique)
60+ * @param title a title of the view
61+ * @return a CustomView object
62+ * @throws IllegalArgumentException if the key is not unique
63+ */
64+ public CustomView createCustomView(String key, String title) {
65+ return createCustomView(key, title, "");
66+ }
67+
5668 /**
5769 * Creates a custom view.
5870 *
@@ -80,6 +92,17 @@ public CustomView createCustomView(String key, String title, String description)
8092 return view;
8193 }
8294
95+ /**
96+ * Creates a system landscape view.
97+ *
98+ * @param key the key for the view (must be unique)
99+ * @return a SystemLandscapeView object
100+ * @throws IllegalArgumentException if the key is not unique
101+ */
102+ public SystemLandscapeView createSystemLandscapeView(String key) {
103+ return createSystemLandscapeView(key, "");
104+ }
105+
83106 /**
84107 * Creates a system landscape view.
85108 *
@@ -107,6 +130,18 @@ public SystemLandscapeView createSystemLandscapeView(String key, String descript
107130 return view;
108131 }
109132
133+ /**
134+ * Creates a system context view, where the scope of the view is the specified software system.
135+ *
136+ * @param softwareSystem the SoftwareSystem object representing the scope of the view
137+ * @param key the key for the view (must be unique)
138+ * @return a SystemContextView object
139+ * @throws IllegalArgumentException if the software system is null or the key is not unique
140+ */
141+ public SystemContextView createSystemContextView(SoftwareSystem softwareSystem, String key) {
142+ return createSystemContextView(softwareSystem, key, "");
143+ }
144+
110145 /**
111146 * Creates a system context view, where the scope of the view is the specified software system.
112147 *
@@ -135,6 +170,18 @@ public SystemContextView createSystemContextView(SoftwareSystem softwareSystem,
135170 return view;
136171 }
137172
173+ /**
174+ * Creates a container view, where the scope of the view is the specified software system.
175+ *
176+ * @param softwareSystem the SoftwareSystem object representing the scope of the view
177+ * @param key the key for the view (must be unique)
178+ * @return a ContainerView object
179+ * @throws IllegalArgumentException if the software system is null or the key is not unique
180+ */
181+ public ContainerView createContainerView(SoftwareSystem softwareSystem, String key) {
182+ return createContainerView(softwareSystem, key, "");
183+ }
184+
138185 /**
139186 * Creates a container view, where the scope of the view is the specified software system.
140187 *
@@ -163,6 +210,18 @@ public ContainerView createContainerView(SoftwareSystem softwareSystem, String k
163210 return view;
164211 }
165212
213+ /**
214+ * Creates a component view, where the scope of the view is the specified container.
215+ *
216+ * @param container the Container object representing the scope of the view
217+ * @param key the key for the view (must be unique)
218+ * @return a ContainerView object
219+ * @throws IllegalArgumentException if the container is null or the key is not unique
220+ */
221+ public ComponentView createComponentView(Container container, String key) {
222+ return createComponentView(container, key, "");
223+ }
224+
166225 /**
167226 * Creates a component view, where the scope of the view is the specified container.
168227 *
@@ -191,6 +250,17 @@ public ComponentView createComponentView(Container container, String key, String
191250 return view;
192251 }
193252
253+ /**
254+ * Creates a dynamic view.
255+ *
256+ * @param key the key for the view (must be unique)
257+ * @return a DynamicView object
258+ * @throws IllegalArgumentException if the key is not unique
259+ */
260+ public DynamicView createDynamicView(String key) {
261+ return createDynamicView(key, "");
262+ }
263+
194264 /**
195265 * Creates a dynamic view.
196266 *
@@ -217,6 +287,25 @@ public DynamicView createDynamicView(String key, String description) {
217287 return view;
218288 }
219289
290+ /**
291+ * Creates a dynamic view, where the scope is the specified software system. The following
292+ * elements can be added to the resulting view:
293+ *
294+ * <ul>
295+ * <li>People</li>
296+ * <li>Software systems</li>
297+ * <li>Containers that reside inside the specified software system</li>
298+ * </ul>
299+ *
300+ * @param softwareSystem the SoftwareSystem object representing the scope of the view
301+ * @param key the key for the view (must be unique)
302+ * @return a DynamicView object
303+ * @throws IllegalArgumentException if the software system is null or the key is not unique
304+ */
305+ public DynamicView createDynamicView(SoftwareSystem softwareSystem, String key) {
306+ return createDynamicView(softwareSystem, key, "");
307+ }
308+
220309 /**
221310 * Creates a dynamic view, where the scope is the specified software system. The following
222311 * elements can be added to the resulting view:
@@ -252,6 +341,26 @@ public DynamicView createDynamicView(SoftwareSystem softwareSystem, String key,
252341 return view;
253342 }
254343
344+ /**
345+ * Creates a dynamic view, where the scope is the specified container. The following
346+ * elements can be added to the resulting view:
347+ *
348+ * <ul>
349+ * <li>People</li>
350+ * <li>Software systems</li>
351+ * <li>Containers with the same parent software system as the specified container</li>
352+ * <li>Components within the specified container</li>
353+ * </ul>
354+ *
355+ * @param container the Container object representing the scope of the view
356+ * @param key the key for the view (must be unique)
357+ * @return a DynamicView object
358+ * @throws IllegalArgumentException if the container is null or the key is not unique
359+ */
360+ public DynamicView createDynamicView(Container container, String key) {
361+ return createDynamicView(container, key, "");
362+ }
363+
255364 /**
256365 * Creates a dynamic view, where the scope is the specified container. The following
257366 * elements can be added to the resulting view:
@@ -288,6 +397,17 @@ public DynamicView createDynamicView(Container container, String key, String des
288397 return view;
289398 }
290399
400+ /**
401+ * Creates a deployment view.
402+ *
403+ * @param key the key for the deployment view (must be unique)
404+ * @return a DeploymentView object
405+ * @throws IllegalArgumentException if the key is not unique
406+ */
407+ public DeploymentView createDeploymentView(String key) {
408+ return createDeploymentView(key, "");
409+ }
410+
291411 /**
292412 * Creates a deployment view.
293413 *
@@ -314,6 +434,18 @@ public DeploymentView createDeploymentView(String key, String description) {
314434 return view;
315435 }
316436
437+ /**
438+ * Creates a deployment view, where the scope of the view is the specified software system.
439+ *
440+ * @param softwareSystem the SoftwareSystem object representing the scope of the view
441+ * @param key the key for the deployment view (must be unique)
442+ * @return a DeploymentView object
443+ * @throws IllegalArgumentException if the software system is null or the key is not unique
444+ */
445+ public DeploymentView createDeploymentView(SoftwareSystem softwareSystem, String key) {
446+ return createDeploymentView(softwareSystem, key, "");
447+ }
448+
317449 /**
318450 * Creates a deployment view, where the scope of the view is the specified software system.
319451 *
@@ -342,6 +474,19 @@ public DeploymentView createDeploymentView(SoftwareSystem softwareSystem, String
342474 return view;
343475 }
344476
477+ /**
478+ * Creates a FilteredView on top of an existing static view.
479+ *
480+ * @param view the static view to base the FilteredView upon
481+ * @param key the key for the filtered view (must be unique)
482+ * @param mode whether to Include or Exclude elements/relationships based upon their tag
483+ * @param tags the tags to include or exclude
484+ * @return a FilteredView object
485+ */
486+ public FilteredView createFilteredView(StaticView view, String key, FilterMode mode, String... tags) {
487+ return createFilteredView(view, key, "", mode, tags);
488+ }
489+
345490 /**
346491 * Creates a FilteredView on top of an existing static view.
347492 *
0 commit comments