copy All XML Attributes - Java XML

Java examples for XML:DOM Node

Description

copy All XML Attributes

Demo Code

/*******************************************************************************
 * Copyright (c) 2006 Sybase, Inc. and others.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors://  w  ww .  ja v  a2  s.  co m
 *     Sybase, Inc. - initial API and implementation
 *******************************************************************************/
//package com.java2s;
import java.util.Arrays;
import java.util.List;
import java.util.Set;
import org.w3c.dom.Attr;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;

public class Main {
    private static List NamedBooleanList = Arrays.asList(new String[] {
            "disabled", "readonly", "ismap" });

    /**
     * 
     * @param source
     * @param dest
     * @param ignore
     */
    public static void copyAllAttributes(Element source, Element dest,
            Set ignore) {
        NamedNodeMap attrs = source.getAttributes();
        for (int i = 0, size = attrs.getLength(); i < size; i++) {
            Attr attr = (Attr) attrs.item(i);
            if (ignore == null || !ignore.contains(attr.getName())) {
                if (NamedBooleanList.contains(attr.getName())
                        && "false".equalsIgnoreCase(attr.getValue())) { //$NON-NLS-1$
                    continue;
                }
                dest.setAttribute(attr.getName(), attr.getValue());
            }
        }
    }
}

Related Tutorials