1 package org.sapia.validator; 2 3 import java.util.HashMap ; 4 import java.util.Locale ; 5 import java.util.Map ; 6 import java.util.Stack ; 7 8 19 public class ValidationContext { 20 private Stack _stack = new Stack (); 21 private Vlad _config; 22 private Locale _locale; 23 private Status _stat; 24 private Map _globals; 25 private Map _contextMap = new HashMap (); 26 29 public ValidationContext(Map globals, 30 Object toValidate, 31 Vlad cfg, 32 Locale locale) { 33 this(globals, toValidate, cfg, locale, null); 34 } 35 36 39 public ValidationContext(Map globals, 40 Object toValidate, 41 Vlad cfg, 42 Locale locale, 43 Map contextMap) { 44 _stack.push(toValidate); 45 _config = cfg; 46 _stat = new Status(this); 47 _locale = locale; 48 _globals = globals; 49 if (contextMap != null) { 50 _contextMap.putAll(contextMap); 51 } 52 } 53 54 59 public Object get() { 60 return _stack.peek(); 61 } 62 63 68 public void push(Object toValidate) { 69 _stack.push(toValidate); 70 } 71 72 77 public Object pop() { 78 return _stack.pop(); 79 } 80 81 86 public Object getGlobal(String name){ 87 return _globals.get(name); 88 } 89 90 98 public Object get(String name){ 99 Object val = _contextMap.get(name); 100 if(val == null){ 101 return getGlobal(name); 102 } 103 return val; 104 } 105 106 111 public Vlad getConfig() { 112 return _config; 113 } 114 115 120 public Locale getLocale() { 121 return _locale; 122 } 123 124 129 public Status getStatus() { 130 return _stat; 131 } 132 } 133 | Popular Tags |