JAL-3026 srcjar files for VARNA and log4j
[jalview.git] / srcjar / org / apache / log4j / or / sax / AttributesRenderer.java
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements.  See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License.  You may obtain a copy of the License at
8  * 
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  * 
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17
18 package org.apache.log4j.or.sax;
19
20 import org.apache.log4j.or.ObjectRenderer;
21
22 import org.xml.sax.Attributes;
23
24 /**
25    Render <code>org.xml.sax.Attributes</code> objects.
26
27    @author Ceki G&uuml;lc&uuml;
28    @since 1.2 */
29 public class AttributesRenderer implements ObjectRenderer {
30
31   public
32   AttributesRenderer() {
33   }
34
35
36   /**
37      Render a {@link org.xml.sax.Attributes}.
38   */
39   public
40   String  doRender(Object o) {
41     if(o instanceof Attributes) {
42       StringBuffer sbuf = new StringBuffer();
43       Attributes a = (Attributes) o;
44       int len = a.getLength();
45       boolean first = true;
46       for(int i = 0; i < len; i++) {
47         if(first) {
48           first = false;
49         } else {
50           sbuf.append(", ");
51         }
52         sbuf.append(a.getQName(i));
53         sbuf.append('=');
54         sbuf.append(a.getValue(i));
55       }
56       return sbuf.toString();
57     } else {
58       try {
59         return o.toString();
60       } catch(Exception ex) {
61           return ex.toString();
62       }
63     }
64   }
65 }
66