1. Project Clover database mar. avr. 16 2024 08:19:06 CEST
  2. Package org.devacfr.maven.skins.reflow.model

File SideNavMenuItem.java

 

Coverage histogram

../../../../../../img/srcFileCovDistChart6.png
65% of files have more coverage

Code metrics

2
22
15
1
186
68
16
0,73
1,47
15
1,07

Classes

Class Line # Actions
SideNavMenuItem 32 22 0% 16 19
0.5128205451,3%
 

Contributing tests

This file is covered by 1 test. .

Source view

1    /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements. See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership. The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License. You may obtain a copy of the License at
9    *
10    * http://www.apache.org/licenses/LICENSE-2.0
11    *
12    * Unless required by applicable law or agreed to in writing,
13    * software distributed under the License is distributed on an
14    * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15    * KIND, either express or implied. See the License for the
16    * specific language governing permissions and limitations
17    * under the License.
18    */
19    package org.devacfr.maven.skins.reflow.model;
20   
21    import javax.annotation.Nonnull;
22   
23    import java.util.Collections;
24    import java.util.List;
25   
26    import org.apache.commons.lang3.builder.ToStringBuilder;
27   
28    /**
29    * @author Christophe Friederich
30    * @since 2.0
31    */
 
32    public class SideNavMenuItem {
33   
34    /** */
35    private String name;
36   
37    /** */
38    private String href;
39   
40    /** */
41    private String icon;
42   
43    /** */
44    private String slugName;
45   
46    /** */
47    private List<SideNavMenuItem> items;
48   
49    /** */
50    private String parent;
51   
52    /**
53    * Default constructor.
54    */
 
55  21 toggle public SideNavMenuItem() {
56    }
57   
58    /**
59    * @return Returns the name of item menu.
60    */
 
61  0 toggle public String getName() {
62  0 return name;
63    }
64   
65    /**
66    * @param name
67    * the name of item menu
68    * @return Returns the fluent instance.
69    */
 
70  21 toggle public SideNavMenuItem withName(final String name) {
71  21 this.name = name;
72  21 return this;
73    }
74   
75    /**
76    * @return Returns the name of parent page.
77    */
 
78  1 toggle public String getParent() {
79  1 return parent;
80    }
81   
82    /***
83    * @param parent
84    * the name of parent page
85    * @return Returns the fluent instance.
86    */
 
87  21 toggle public SideNavMenuItem withParent(final String parent) {
88  21 this.parent = parent;
89  21 return this;
90    }
91   
92    /**
93    * @return Returns the link associated to this item menu.
94    */
 
95  0 toggle public String getHref() {
96  0 return href;
97    }
98   
99    /**
100    * @param href
101    * the link to use.
102    * @return Returns the fluent instance.
103    */
 
104  21 toggle public SideNavMenuItem withHref(final String href) {
105  21 this.href = href;
106  21 return this;
107    }
108   
109    /**
110    * @return Returns the {@link String} representing the slugged link associate to this menu item.
111    */
 
112  22 toggle public String getSlugName() {
113  22 return slugName;
114    }
115   
116    /**
117    * @param slugName
118    * the slugged name.
119    * @return Returns the fluent instance.
120    */
 
121  21 toggle public SideNavMenuItem withSlugName(final String slugName) {
122  21 this.slugName = slugName;
123  21 return this;
124    }
125   
126    /**
127    * @return Returns the icon to use.
128    */
 
129  0 toggle public String getIcon() {
130  0 return icon;
131    }
132   
133    /**
134    * Sets the icon associate to.
135    *
136    * @param icon
137    * the icon to use.
138    * @return Returns the fluent instance.
139    */
 
140  21 toggle public SideNavMenuItem withIcon(final String icon) {
141  21 this.icon = icon;
142  21 return this;
143    }
144   
145    /**
146    * Gets the indicating whether has items.
147    *
148    * @return Returns {@code true} if has items, otherwise {@code false}.
149    */
 
150  0 toggle public boolean isHasItems() {
151  0 return items != null && !items.isEmpty();
152    }
153   
154    /**
155    * Gets the list of items.
156    *
157    * @return Returns a {@link List} representing the items.
158    */
 
159  0 toggle @Nonnull
160    public List<SideNavMenuItem> getItems() {
161  0 if (items == null) {
162  0 return Collections.emptyList();
163    }
164  0 return items;
165    }
166   
167    /**
168    * Sets the items associate.
169    *
170    * @param items
171    * the list of items.
172    * @return Returns the fluent instance.
173    */
 
174  0 toggle public SideNavMenuItem withItems(final List<SideNavMenuItem> items) {
175  0 this.items = items;
176  0 return this;
177    }
178   
179    /**
180    * {@inheritDoc}
181    */
 
182  0 toggle @Override
183    public String toString() {
184  0 return ToStringBuilder.reflectionToString(this);
185    }
186    }