44import java .io .UnsupportedEncodingException ;
55import java .net .URLDecoder ;
66import java .util .Enumeration ;
7-
87import javax .servlet .http .HttpServletRequest ;
9-
10- import java .awt .Color ;
118import org .apache .commons .configuration2 .PropertiesConfiguration ;
129import org .apache .commons .configuration2 .builder .fluent .Configurations ;
1310import org .apache .commons .configuration2 .ex .ConfigurationException ;
1613import org .getaviz .generator .SettingsConfiguration .Bricks .Layout ;
1714import org .getaviz .generator .SettingsConfiguration .Original .BuildingMetric ;
1815import org .getaviz .generator .SettingsConfiguration .Panels .SeparatorModes ;
16+ import org .getaviz .generator .output .OutputColor ;
1917
2018public class SettingsConfiguration {
2119 private static PropertiesConfiguration config ;
@@ -317,75 +315,62 @@ public double getBuildingVerticalMargin() {
317315 return config .getDouble ("city.building.vertical_margin" , 1.0 );
318316 }
319317
320- public String getPackageColorHex () {
321- return config .getString ("city.package.color_start" , "#969696" );
322- }
323-
324- public Color getPackageColorStart () {
325- return getColor (config .getString ("city.package.color_start" , "#969696" ));
326- }
327-
328- public Color getPackageColorEnd () {
329- return getColor (config .getString ("city.package.color_end" , "#f0f0f0" ));
318+ public OutputColor getPackageColorStart () {
319+ return new OutputColor (config .getString ("city.package.color_start" , "#969696" ));
330320 }
331321
332- public String getClassColorHex () {
333- return config .getString ("city.class.color " , "#353559" );
322+ public OutputColor getPackageColorEnd () {
323+ return new OutputColor ( config .getString ("city.package.color_end " , "#f0f0f0" ) );
334324 }
335325
336- public Color getClassColorStart () {
337- return getColor (config .getString ("city.class.color_start" , "#131615" ));
326+ public OutputColor getClassColorStart () {
327+ return new OutputColor (config .getString ("city.class.color_start" , "#131615" ));
338328 }
339329
340- public Color getClassColorEnd () {
341- return getColor (config .getString ("city.class.color_end" , "#00ff00" ));
330+ public OutputColor getClassColorEnd () {
331+ return new OutputColor (config .getString ("city.class.color_end" , "#00ff00" ));
342332 }
343333
344- public Color getClassColor () {
345- return getColor (config .getString ("city.class.color" , "#353559" ));
334+ public OutputColor getClassColor () {
335+ final String color = config .getString ("city.class.color" , "#353559" );
336+ return new OutputColor (color );
346337 }
347338
348- public Color getCityColor (String name ) {
349- return getColor (getCityColorHex (name ));
350- }
351-
352- public String getCityColorHex (String name ) {
353- String color = name .toLowerCase ();
339+ public OutputColor getCityColor (String name ) {
340+ String colorName = name .toLowerCase ();
354341 String defaultColor = "" ;
355- switch (name ) {
356- case "aqua" :
357- defaultColor = "#99CCFF" ; break ;
358- case "blue" :
359- defaultColor = "#99FFCC" ; break ;
360- case "light_green" :
361- defaultColor = "#CCFF99" ; break ;
362- case "dark_green" :
363- defaultColor = "#99FF99" ; break ;
364- case "yellow" :
365- defaultColor = "#FFFF99" ; break ;
366- case "orange" :
367- defaultColor = "#FFCC99" ; break ;
368- case "red" :
369- defaultColor = "#FF9999" ; break ;
370- case "pink" :
371- defaultColor = "#FF99FF" ; break ;
372- case "violet" :
373- defaultColor = "#9999FF" ; break ;
374- case "light_grey" :
375- defaultColor = "#CCCCCC" ; break ;
376- case "dark_grey" :
377- defaultColor = "#999999" ; break ;
378- case "white" :
379- defaultColor = "#FFFFFF" ; break ;
380- case "black" :
381- defaultColor = "#000000" ; break ;
342+ switch (colorName ) {
343+ case "aqua" :
344+ defaultColor = "#99CCFF" ; break ;
345+ case "blue" :
346+ defaultColor = "#99FFCC" ; break ;
347+ case "light_green" :
348+ defaultColor = "#CCFF99" ; break ;
349+ case "dark_green" :
350+ defaultColor = "#99FF99" ; break ;
351+ case "yellow" :
352+ defaultColor = "#FFFF99" ; break ;
353+ case "orange" :
354+ defaultColor = "#FFCC99" ; break ;
355+ case "red" :
356+ defaultColor = "#FF9999" ; break ;
357+ case "pink" :
358+ defaultColor = "#FF99FF" ; break ;
359+ case "violet" :
360+ defaultColor = "#9999FF" ; break ;
361+ case "light_grey" :
362+ defaultColor = "#CCCCCC" ; break ;
363+ case "dark_grey" :
364+ defaultColor = "#999999" ; break ;
365+ case "white" :
366+ defaultColor = "#FFFFFF" ; break ;
367+ case "black" :
368+ defaultColor = "#000000" ; break ;
382369 }
383- return config .getString ("city.color." + color , defaultColor );
370+ final String color = config .getString ("city.color." + colorName , defaultColor );
371+ return new OutputColor (color );
384372 }
385373
386- public String getCityColorAsPercentage (String name ) {
387- return getColorFormatted (getCityColor (name ));
388- }
389374
390375 public double getRDDataFactor () {
391376 return config .getDouble ("rd.data_factor" , 4.0 );
@@ -423,35 +408,19 @@ public double getRDDataTransparency() {
423408 return config .getDouble ("rd.data_transparency" , 0 );
424409 }
425410
426- public String getRDClassColor () {
411+ public OutputColor getRDClassColor () {
427412 final String color = config .getString ("rd.color.class" , "#353559" );
428- if (this .getOutputFormat () == OutputFormat .AFrame ) {
429- return color ;
430- } else {
431- return getColorFormatted (getColor (color ));
432- }
413+ return new OutputColor (color );
433414 }
434415
435- public String getRDDataColor () {
416+ public OutputColor getRDDataColor () {
436417 final String color = config .getString ("rd.color.data" , "#fffc19" );
437- if (this .getOutputFormat () == OutputFormat .AFrame ) {
438- return color ;
439- } else {
440- return getColorFormatted (getColor (color ));
441- }
418+ return new OutputColor (color );
442419 }
443420
444- public String getRDMethodColor () {
421+ public OutputColor getRDMethodColor () {
445422 final String color = config .getString ("rd.color.method" , "#1485cc" );
446- if (this .getOutputFormat () == OutputFormat .AFrame ) {
447- return color ;
448- } else {
449- return getColorFormatted (getColor (color ));
450- }
451- }
452-
453- public String getRDNamespaceColorHex () {
454- return config .getString ("rd.color.namespace" , "#969696" );
423+ return new OutputColor (color );
455424 }
456425
457426 public boolean isMethodDisks () {
@@ -466,17 +435,6 @@ public boolean isMethodTypeMode() {
466435 return config .getBoolean ("rd.method_type_mode" , false );
467436 }
468437
469- private String getColorFormatted (Color color ) {
470- double r = color .getRed () / 255.0 ;
471- double g = color .getGreen () / 255.0 ;
472- double b = color .getBlue () / 255.0 ;
473- return r + " " + g + " " + b ;
474- }
475-
476- private Color getColor (String hex ) {
477- return Color .decode (hex );
478- }
479-
480438 public enum OutputFormat {
481439 X3D , AFrame
482440 }
0 commit comments