1 /*
2
3 dsh-graph-io Directed graph readers and writers.
4 Copyright (c) 2008-2013 held jointly by the individual authors.
5
6 This library is free software; you can redistribute it and/or modify it
7 under the terms of the GNU Lesser General Public License as published
8 by the Free Software Foundation; either version 3 of the License, or (at
9 your option) any later version.
10
11 This library is distributed in the hope that it will be useful, but WITHOUT
12 ANY WARRANTY; with out even the implied warranty of MERCHANTABILITY or
13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
14 License for more details.
15
16 You should have received a copy of the GNU Lesser General Public License
17 along with this library; if not, write to the Free Software Foundation,
18 Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
19
20 > http://www.fsf.org/licensing/licenses/lgpl.html
21 > http://www.opensource.org/licenses/lgpl-license.php
22
23 */
24 package org.dishevelled.graph.io.ygraphml;
25
26 /**
27 * Line style.
28 *
29 * @author Michael Heuer
30 * @version $Revision$ $Date$
31 */
32 public final class LineStyle
33 {
34 /** Type for this line style. */
35 private final String type;
36
37 /** Width for this line style. */
38 private final double width;
39
40 /** Color for this line style. */
41 private final String color;
42
43
44 /**
45 * Create a new line style from the specified parameters.
46 *
47 * @param type type for this line style, must not be null
48 * @param width width for this line style
49 * @param color color for this line style, must not be null
50 */
51 public LineStyle(final String type, final double width, final String color)
52 {
53 if (type == null)
54 {
55 throw new IllegalArgumentException("type must not be null");
56 }
57 if (color == null)
58 {
59 throw new IllegalArgumentException("color must not be null");
60 }
61 this.type = type;
62 this.width = width;
63 this.color = color;
64 }
65
66
67 /**
68 * Return the type for this line style.
69 * The type will not be null.
70 *
71 * @return the type for this line style
72 */
73 public String getType()
74 {
75 return type;
76 }
77
78 /**
79 * Return the width for this line style.
80 *
81 * @return the width for this line style
82 */
83 public double getWidth()
84 {
85 return width;
86 }
87
88 /**
89 * Return the color for this line style.
90 * The color will not be null.
91 *
92 * @return the color for this line style
93 */
94 public String getColor()
95 {
96 return color;
97 }
98 }