(Expression expression, Map<String, ?> variables)
| 130 | } |
| 131 | |
| 132 | protected String resolveExpression(Expression expression, Map<String, ?> variables) { |
| 133 | String resolved = null; |
| 134 | Object value = variables.get(expression.getName()); |
| 135 | if (value != null) { |
| 136 | String expanded = expression.expand(value, this.encode.isEncodingRequired()); |
| 137 | if (expanded != null) { |
| 138 | if (!this.encodeSlash) { |
| 139 | logger.fine("Explicit slash decoding specified, decoding all slashes in uri"); |
| 140 | expanded = expanded.replaceAll("%2F", "/"); |
| 141 | } |
| 142 | resolved = expanded; |
| 143 | } |
| 144 | } else { |
| 145 | if (this.allowUnresolved) { |
| 146 | /* unresolved variables are treated as literals */ |
| 147 | resolved = encodeLiteral(expression.toString()); |
| 148 | } |
| 149 | } |
| 150 | return resolved; |
| 151 | } |
| 152 | |
| 153 | /** |
| 154 | * Uri Encode the value. |
no test coverage detected