pbwest      2002/08/19 08:59:23

  Modified:    src/org/apache/fop/fo Tag: FOP_0-20-0_Alt-Design
                        FOAttributes.java
  Log:
  Changed names of maps from \*List\* to \*Map\*.
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.3   +71 -46    xml-fop/src/org/apache/fop/fo/Attic/FOAttributes.java
  
  Index: FOAttributes.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/fo/Attic/FOAttributes.java,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- FOAttributes.java 27 Jun 2002 12:55:18 -0000      1.1.2.2
  +++ FOAttributes.java 19 Aug 2002 15:59:22 -0000      1.1.2.3
  @@ -39,7 +39,7 @@
       private static final String revision = "$Revision$";
   
       /**
  -     * <i>nSpaceAttrLists</i> is an <tt>ArrayList</tt> to hold the array of 
  +     * <i>nSpaceAttrMaps</i> is an <tt>ArrayList</tt> to hold the array of 
        * <tt>HashMap</tt>s which contain the attribute lists for each
        * namespace which may be active for a particular FO element.  The
        * <tt>ArrayList</tt> is indexed by the URIIndex for this namespace
  @@ -49,18 +49,18 @@
        * The <tt>ArrayList</tt> will not be created for a particular instance
        * of <tt>FOAttributes</tt> unless a namespace other than the standard
        * XSL namespace is activated for this instance.
  -     * See <i>foAttrList</i>.
  +     * See <i>foAttrMap</i>.
        */
  -    private ArrayList nSpaceAttrLists;
  +    private ArrayList nSpaceAttrMaps;
   
       /**
  -     * <i>foAttrList</i> is a <tt>HashMap</tt> to hold the FO namespace
  +     * <i>foAttrMap</i> is a <tt>HashMap</tt> to hold the FO namespace
        * attribute list specified in the FO element with which this list is
        * associated.  The <tt>String</tt> attribute value is stored
        * indexed by the integer constant property identifier from
        * <tt>PropertyConsts</tt>.
        */
  -    private HashMap foAttrList = new HashMap(0);
  +    private HashMap foAttrMap = new HashMap(0);
   
       private int DefAttrNSIndex = XMLEvent.DefAttrNSIndex;
   
  @@ -71,11 +71,11 @@
        * <p>The <tt>Attributes</tt> object on the event is scanned, and each
        * attribute is examined.  If the attribute is in the default namespace
        * for fo: attributes, it is an fo: property, and its value is entered
  -     * into the <i>foAttrList</i> <tt>Hashmap>/tt> indexed by the property
  +     * into the <i>foAttrMap</i> <tt>Hashmap>/tt> indexed by the property
        * index.
        * <p>If the attribute does not belong to the default namespace, its
        * value is entered into the appropriate <tt>HashMap</tt> in the
  -     * <tt>ArrayList</tt> <i>nSpaceAttrLists</i>, indexed by the attribute's
  +     * <tt>ArrayList</tt> <i>nSpaceAttrMaps</i>, indexed by the attribute's
        * local name.
        * <p>
        */
  @@ -83,10 +83,10 @@
           // If the event is null, there is no event associated with this
           // node, probably because this is a manufactured node; e.g.,
           // an "invented" FopageSequenceMaster.  The default initialisation
  -        // includes an empty foAttrList HashMap.
  +        // includes an empty foAttrMap HashMap.
           if (event == null) return;
               
  -        // Create the foAttrList.
  +        // Create the foAttrMap.
           Attributes attributes = event.attributes;
           if (attributes == null) throw new FOPException
                                          ("No Attributes in XMLEvent");
  @@ -109,7 +109,7 @@
                       propIndex =
                               PropertyConsts.getPropertyIndex(attrLocalname);
                       // Known attribute name
  -                    foAttrList.put(Ints.consts.get(propIndex), attrValue);
  +                    foAttrMap.put(Ints.consts.get(propIndex), attrValue);
                   } catch (PropertyException e) {
                       // Not known - ignore
                       MessageHandler.errorln(event.qName + " "
  @@ -118,27 +118,27 @@
                   }
               } else { // Not the XSL FO namespace
                   int j;
  -                if (nSpaceAttrLists == null) {
  +                if (nSpaceAttrMaps == null) {
                       //Create the list
  -                    System.out.println("Creating nSpaceAttrLists");
  -                    nSpaceAttrLists = new ArrayList(attrUriIndex + 1);
  +                    System.out.println("Creating nSpaceAttrMaps");
  +                    nSpaceAttrMaps = new ArrayList(attrUriIndex + 1);
                       // Add the fo list
                       for (j = 0; j < DefAttrNSIndex; j++)
  -                        nSpaceAttrLists.add(new HashMap(0));
  +                        nSpaceAttrMaps.add(new HashMap(0));
   
  -                    System.out.println("Adding foAttrList");
  -                    nSpaceAttrLists.add(foAttrList);
  +                    System.out.println("Adding foAttrMap");
  +                    nSpaceAttrMaps.add(foAttrMap);
                   }
                   // Make sure there are elements between the last current
                   // and the one to be added
  -                for (j = nSpaceAttrLists.size(); j <= attrUriIndex; j++)
  -                    nSpaceAttrLists.add(new HashMap(0));
  +                for (j = nSpaceAttrMaps.size(); j <= attrUriIndex; j++)
  +                    nSpaceAttrMaps.add(new HashMap(0));
                   
                   // Does a HashMap exist for this namespace?
                   if ((tmpHash =
  -                     (HashMap)nSpaceAttrLists.get(attrUriIndex)) == null) {
  +                     (HashMap)nSpaceAttrMaps.get(attrUriIndex)) == null) {
                       tmpHash = new HashMap(1);
  -                    nSpaceAttrLists.set(attrUriIndex, tmpHash);
  +                    nSpaceAttrMaps.set(attrUriIndex, tmpHash);
                   }
                   // Now put this value in the HashMap
                   tmpHash.put(attrLocalname, attrValue);
  @@ -152,8 +152,19 @@
        * attribute list, indexed by the property name index from
        * <tt>PropNames</tt>.
        */
  -    public Map getFoAttrList() {
  -        return Collections.unmodifiableMap((Map)foAttrList);
  +    public Map getFixedFoAttrMap() {
  +        return Collections.unmodifiableMap((Map)foAttrMap);
  +    }
  +
  +    /**
  +     * @return <tt>HashMap</tt> <i>foAttrMap</i> containing the the attribute
  +     * values for all of the default attribute namespace attributes in this
  +     * attribute list, indexed by the property name index from
  +     * <tt>PropNames</tt>.  This HashMap may be changed by the calling
  +     * process.
  +     */
  +    public HashMap getFoAttrMap() {
  +        return foAttrMap;
       }
   
       /**
  @@ -164,7 +175,7 @@
        * @return a <tt>String</tt> containing the associated property value.
        */
       public String getFoAttrValue(int property) {
  -        return (String)(foAttrList.get(Ints.consts.get(property)));
  +        return (String)(foAttrMap.get(Ints.consts.get(property)));
       }
   
       /**
  @@ -187,15 +198,15 @@
        * @return an unmodifiable <tt>Map</tt> of the attribute values
        * within the indexed namespace, for this attribute list, indexed by the
        * local name of the attribute.  The <tt>Map</tt> returned is
  -     * derived from the one maintained in <i>nSpaceAttrLists</i>.
  +     * derived from the one maintained in <i>nSpaceAttrMaps</i>.
        */
  -    public Map getAttrList(int uriIndex) {
  +    public Map getAttrMap(int uriIndex) {
           if (uriIndex == DefAttrNSIndex)
  -            return Collections.unmodifiableMap((Map)foAttrList);
  -        if (nSpaceAttrLists != null) {
  -            if (uriIndex >= nSpaceAttrLists.size()) return null;
  +            return Collections.unmodifiableMap((Map)foAttrMap);
  +        if (nSpaceAttrMaps != null) {
  +            if (uriIndex >= nSpaceAttrMaps.size()) return null;
               return Collections.unmodifiableMap
  -                    ((Map)(nSpaceAttrLists.get(uriIndex)));
  +                    ((Map)(nSpaceAttrMaps.get(uriIndex)));
           } else {
               return null;
           }
  @@ -215,43 +226,57 @@
           if (uriIndex == DefAttrNSIndex)
               return getFoAttrValue(PropertyConsts.getPropertyIndex(localName));
           return (String)
  -                (((HashMap)nSpaceAttrLists.get(uriIndex)).get(localName));
  +                (((HashMap)nSpaceAttrMaps.get(uriIndex)).get(localName));
  +    }
  +
  +    /**
  +     * Get the size of the <i>foAttrMap</i> <tt>HashMap</tt>
  +     * containing attributes for the default fo: namespace
  +     * @return an <tt>int</tt> containing the size.
  +     */
  +    public int getFoAttrMapSize() {
  +        return foAttrMap.size();
       }
   
       /**
  -     * Get the size of the <i>nSpaceAttrLists</i> <tt>ArrayList</tt>
  +     * Get the size of the <i>nSpaceAttrMaps</i> <tt>ArrayList</tt>
        * containing attribute namespaces active in this set of attributes.
        * <i>N.B.</i> this may be zero if only the default attribute
        * namespace has been seen in the attribute set.
        * @return an <tt>int</tt> containing the size.
        */
  -    public int getNSpaceAttrListsSize() {
  -        if (nSpaceAttrLists == null)
  +    public int getNSpaceAttrMapsSize() {
  +        if (nSpaceAttrMaps == null)
               return 0;
  -        return nSpaceAttrLists.size();
  +        return nSpaceAttrMaps.size();
       }
   
       /**
  +     * Merge attributes from another <tt>FOAttributes</tt> into <i>this</i>.
  +     * @param foAttrs the <tt>FOAttributes</tt> containing the attributes
  +     * to merge.
        */
       public void merge(FOAttributes foAttrs) {
  -        foAttrList.putAll(foAttrs.getFoAttrList());
  -        int attrLen = foAttrs.getNSpaceAttrListsSize();
  +        foAttrMap.putAll(foAttrs.getFoAttrMap());
  +        int attrLen = foAttrs.getNSpaceAttrMapsSize();
           if (attrLen != 0) {
               // something to copy
  -            if (nSpaceAttrLists == null) {
  +            if (nSpaceAttrMaps == null) {
                   // no "foreign" attribute lists in this
                   // copy the others in
  -                nSpaceAttrLists = new ArrayList(attrLen);
  +                nSpaceAttrMaps = new ArrayList(attrLen);
               }
  -            for (int i = nSpaceAttrLists.size(); i < attrLen; i++)
  -                nSpaceAttrLists.add(new HashMap(0));
  +            // If the merging ArrayList of namespaces is larger, add the
  +            // extra elements and initialise each to an empty HashMap
  +            for (int i = nSpaceAttrMaps.size(); i < attrLen; i++)
  +                nSpaceAttrMaps.add(new HashMap(0));
               // Except for foAttrs, which has already been merged, merge
               // the entries from the merging foAttrs
               for (int i = 0; i < attrLen; i++) {
  -                // skip foAttrList
  +                // skip foAttrMap
                   if (i == DefAttrNSIndex) continue;
  -               ((HashMap) nSpaceAttrLists.get(i))
  -                       .putAll(foAttrs.getAttrList(i));
  +               ((HashMap) nSpaceAttrMaps.get(i))
  +                       .putAll(foAttrs.getAttrMap(i));
               }
           }
       }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to