src/share/jaxws_classes/javax/xml/bind/annotation/adapters/CollapsedStringAdapter.java

Print this page
rev 507 : 8047724: @since tag cleanup in jaxws
Reviewed-by:


  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package javax.xml.bind.annotation.adapters;
  27 
  28 
  29 
  30 /**
  31  * Built-in {@link XmlAdapter} to handle <tt>xs:token</tt> and its derived types.
  32  *
  33  * <p>
  34  * This adapter removes leading and trailing whitespaces, then truncate any
  35  * sequnce of tab, CR, LF, and SP by a single whitespace character ' '.
  36  *
  37  * @author Kohsuke Kawaguchi
  38  * @since JAXB 2.0
  39  */
  40 public class CollapsedStringAdapter extends XmlAdapter<String,String> {
  41     /**
  42      * Removes leading and trailing whitespaces of the string
  43      * given as the parameter, then truncate any
  44      * sequnce of tab, CR, LF, and SP by a single whitespace character ' '.
  45      */
  46     public String unmarshal(String text) {
  47         if(text==null)  return null;        // be defensive
  48 
  49         int len = text.length();
  50 
  51         // most of the texts are already in the collapsed form.
  52         // so look for the first whitespace in the hope that we will
  53         // never see it.
  54         int s=0;
  55         while(s<len) {
  56             if(isWhiteSpace(text.charAt(s)))
  57                 break;
  58             s++;




  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package javax.xml.bind.annotation.adapters;
  27 
  28 
  29 
  30 /**
  31  * Built-in {@link XmlAdapter} to handle <tt>xs:token</tt> and its derived types.
  32  *
  33  * <p>
  34  * This adapter removes leading and trailing whitespaces, then truncate any
  35  * sequnce of tab, CR, LF, and SP by a single whitespace character ' '.
  36  *
  37  * @author Kohsuke Kawaguchi
  38  * @since 1.6, JAXB 2.0
  39  */
  40 public class CollapsedStringAdapter extends XmlAdapter<String,String> {
  41     /**
  42      * Removes leading and trailing whitespaces of the string
  43      * given as the parameter, then truncate any
  44      * sequnce of tab, CR, LF, and SP by a single whitespace character ' '.
  45      */
  46     public String unmarshal(String text) {
  47         if(text==null)  return null;        // be defensive
  48 
  49         int len = text.length();
  50 
  51         // most of the texts are already in the collapsed form.
  52         // so look for the first whitespace in the hope that we will
  53         // never see it.
  54         int s=0;
  55         while(s<len) {
  56             if(isWhiteSpace(text.charAt(s)))
  57                 break;
  58             s++;