Author: michiel
Date: 2010-05-16 19:06:29 +0200 (Sun, 16 May 2010)
New Revision: 42168
Modified:
mmbase/trunk/utils/src/main/java/org/mmbase/util/transformers/Identifier.java
Log:
small property for white space
Modified:
mmbase/trunk/utils/src/main/java/org/mmbase/util/transformers/Identifier.java
===================================================================
---
mmbase/trunk/utils/src/main/java/org/mmbase/util/transformers/Identifier.java
2010-05-16 17:06:01 UTC (rev 42167)
+++
mmbase/trunk/utils/src/main/java/org/mmbase/util/transformers/Identifier.java
2010-05-16 17:06:29 UTC (rev 42168)
@@ -17,6 +17,7 @@
/**
* Transforms strings to identifiers, replacing punctuation and whitespace with
* underscores.
+ * Optionally, white space can be replaced by something else (e.g. a hyphen).
*
* @author Pierre van Rooden
* @since MMBase-1.7
@@ -27,6 +28,21 @@
private static final long serialVersionUID = 0L;
private static Logger log = Logging.getLoggerInstance(Identifier.class);
+ private String whitespace = "_";
+ /**
+ * @since MMBase-1.9.4
+ */
+ public void setWhitespaceReplacer(String ws) {
+ whitespace = ws;
+ }
+
+ /**
+ * @since MMBase-1.9.4
+ */
+ public String getWhitespaceReplacer() {
+ return whitespace;
+ }
+
public Writer transform(Reader r, Writer w) {
try {
log.debug("Starting identifier");
@@ -35,6 +51,8 @@
if (c == -1) break;
if (Character.isLetterOrDigit((char)c)) {
w.write((char)c);
+ } if (Character.isWhitespace((char) c)) {
+ w.write(whitespace);
} else {
w.write('_');
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs