Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/objectstyle/woproject/log4j/CollectionRenderer.java


1   package org.objectstyle.woproject.log4j;
2   /* ====================================================================
3    * 
4    * The ObjectStyle Group Software License, Version 1.0 
5    *
6    * Copyright (c) 2002 The ObjectStyle Group 
7    * and individual authors of the software.  All rights reserved.
8    *
9    * Redistribution and use in source and binary forms, with or without
10   * modification, are permitted provided that the following conditions
11   * are met:
12   *
13   * 1. Redistributions of source code must retain the above copyright
14   *    notice, this list of conditions and the following disclaimer. 
15   *
16   * 2. Redistributions in binary form must reproduce the above copyright
17   *    notice, this list of conditions and the following disclaimer in
18   *    the documentation and/or other materials provided with the
19   *    distribution.
20   *
21   * 3. The end-user documentation included with the redistribution, if
22   *    any, must include the following acknowlegement:  
23   *       "This product includes software developed by the 
24   *        ObjectStyle Group (http://objectstyle.org/)."
25   *    Alternately, this acknowlegement may appear in the software itself,
26   *    if and wherever such third-party acknowlegements normally appear.
27   *
28   * 4. The names "ObjectStyle Group" and "Cayenne" 
29   *    must not be used to endorse or promote products derived
30   *    from this software without prior written permission. For written 
31   *    permission, please contact andrus@objectstyle.org.
32   *
33   * 5. Products derived from this software may not be called "ObjectStyle"
34   *    nor may "ObjectStyle" appear in their names without prior written
35   *    permission of the ObjectStyle Group.
36   *
37   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
38   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
39   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
40   * DISCLAIMED.  IN NO EVENT SHALL THE OBJECTSTYLE GROUP OR
41   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
42   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
43   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
44   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
45   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
46   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
47   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
48   * SUCH DAMAGE.
49   * ====================================================================
50   *
51   * This software consists of voluntary contributions made by many
52   * individuals on behalf of the ObjectStyle Group.  For more
53   * information on the ObjectStyle Group, please see
54   * <http://objectstyle.org/>.
55   *
56   */
57  
58  
59  import org.apache.log4j.Hierarchy;
60  import org.apache.log4j.LogManager;
61  import org.apache.log4j.or.ObjectRenderer;
62  import org.apache.log4j.or.RendererMap;
63  
64  
65  /** Log4J renderer for collections. Superclass of concrete
66    * renderers. 
67    *
68    * @author Andrei Adamchik
69    */
70  public abstract class CollectionRenderer implements ObjectRenderer {
71      protected static final RendererMap rendererMap =
72          ((Hierarchy) LogManager.getLoggerRepository()).getRendererMap();
73  
74      protected static final String renderObject(Object o) {
75          ObjectRenderer r = rendererMap.get(o);
76          return (r != null) ? r.doRender(o) : o.toString();
77      }
78  }