You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ec...@apache.org on 2013/12/20 17:10:44 UTC
[10/12] git commit: ACCUMULO-2067 urlencode the table id used in the
link.
ACCUMULO-2067 urlencode the table id used in the link.
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/e7f68b58
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/e7f68b58
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/e7f68b58
Branch: refs/heads/master
Commit: e7f68b586f8317b1e1e94aa56e6adbeacc10670f
Parents: 92077a8
Author: Josh Elser <el...@apache.org>
Authored: Fri Dec 20 01:45:55 2013 -0500
Committer: Josh Elser <el...@apache.org>
Committed: Fri Dec 20 01:45:55 2013 -0500
----------------------------------------------------------------------
.../monitor/util/celltypes/TableLinkType.java | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/accumulo/blob/e7f68b58/server/monitor/src/main/java/org/apache/accumulo/monitor/util/celltypes/TableLinkType.java
----------------------------------------------------------------------
diff --git a/server/monitor/src/main/java/org/apache/accumulo/monitor/util/celltypes/TableLinkType.java b/server/monitor/src/main/java/org/apache/accumulo/monitor/util/celltypes/TableLinkType.java
index 03bd06b..39a932e 100644
--- a/server/monitor/src/main/java/org/apache/accumulo/monitor/util/celltypes/TableLinkType.java
+++ b/server/monitor/src/main/java/org/apache/accumulo/monitor/util/celltypes/TableLinkType.java
@@ -16,13 +16,18 @@
*/
package org.apache.accumulo.monitor.util.celltypes;
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
import java.util.Map;
+import org.apache.accumulo.core.Constants;
import org.apache.accumulo.core.client.impl.Tables;
import org.apache.accumulo.server.client.HdfsZooInstance;
+import org.apache.log4j.Logger;
public class TableLinkType extends CellType<String> {
+ private static final Logger log = Logger.getLogger(TableLinkType.class);
private Map<String,String> tidToNameMap;
public TableLinkType() {
@@ -34,7 +39,15 @@ public class TableLinkType extends CellType<String> {
if (obj == null)
return "-";
String tableId = (String) obj;
- return String.format("<a href='/tables?t=%s'>%s</a>", tableId, displayName(tableId));
+ String encodedTableId = tableId;
+ // Encode the tableid we use in the link so we construct a correct url
+ // e.g. the root table's id of "+r" would not be interpreted properly
+ try {
+ encodedTableId = URLEncoder.encode(tableId, Constants.UTF8.name());
+ } catch (UnsupportedEncodingException e) {
+ log.error("Could not urlencode tableId: " + encodedTableId);
+ }
+ return String.format("<a href='/tables?t=%s'>%s</a>", encodedTableId, displayName(tableId));
}
private String displayName(String tableId) {