1 /*
2 * Copyright (c) 2014, Dienst Landelijk Gebied - Ministerie van Economische Zaken
3 *
4 * Gepubliceerd onder de BSD 2-clause licentie,
5 * zie https://github.com/MinELenI/CBSviewer/blob/master/LICENSE.md voor de volledige licentie.
6 */
7 package nl.mineleni.cbsviewer.util;
8
9 /**
10 * namen van de gebruikte cookies.
11 *
12 * @author Mark
13 * @note bevat de namen van de gebruikte cookies
14 */
15 public enum CookieNamesConstants {
16 /**
17 * base layer.
18 */
19 COOKIE_baselyr("baselyr"),
20 /** map id. */
21 COOKIE_mapid("mapid"),
22 /** x coordinate. */
23 COOKIE_X("x"),
24 /** y coordinate. */
25 COOKIE_Y("y"),
26 /** zoom level. */
27 COOKIE_S("s");
28
29 /** De code (waarde) van dit object. */
30 public final String value;
31
32 /**
33 * Maakt een nieuw object aan met de gegeven code waarde.
34 *
35 * @param value
36 * de code voor dit object
37 * @see #value
38 */
39 CookieNamesConstants(final String value) {
40 this.value = value;
41 }
42
43 /**
44 * Geeft de waarde van dit object terug. Analoog van {@link #value}
45 *
46 * @return de code
47 * @see #value
48 * @see java.lang.Enum#toString()
49 */
50 @Override
51 public String toString() {
52 return this.value;
53 }
54
55 /**
56 * Maak een javascript representatie van dit object.
57 *
58 * @return een javascript statement van dit object, padded in een CDATA
59 * sectie voor gebruik in xml documenten
60 */
61 public static String asJavaScript() {
62 final StringBuilder sb = new StringBuilder(
63 "/* <![CDATA[ */ var COOKIE = {};");
64 for (final CookieNamesConstants cconst : CookieNamesConstants.values()) {
65 sb.append(cconst.name().replace('_', '.'));
66 sb.append("='");
67 sb.append(cconst.value);
68 sb.append("',");
69 }
70 sb.deleteCharAt(sb.length() - 1);
71 sb.append("; /* ]]> */");
72 return sb.toString();
73 }
74 }