|
What this is
Other links
The source code/* * TreeNodeFilter.java -- synopsis. * * * SUN PROPRIETARY/CONFIDENTIAL: INTERNAL USE ONLY. * * {START_JAVA_COPYRIGHT_NOTICE * Copyright 2001 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * END_COPYRIGHT_NOTICE} */ package org.netbeans.modules.xml.tax.traversal; import java.io.*; import java.util.ArrayList; import org.netbeans.tax.traversal.TreeNodeFilter; /** * * @author Libor Kramolis * @version 0.1 */ public final class TreeNodeFilterHandle implements Serializable { private static final long serialVersionUID = -571598256778542088L; /** */ private String[] nodeTypeNames; /** */ private short acceptPolicy; /** */ transient private TreeNodeFilter nodeFilter; // // init // /** */ public TreeNodeFilterHandle (TreeNodeFilter nodeFilter) { this.nodeFilter = nodeFilter; } // // itself // /** */ public TreeNodeFilter getNodeFilter () { if ( nodeFilter == null ) { // lazy init ArrayList knownTypes = new ArrayList(); for (int i = 0; i < nodeTypeNames.length; i++) { try { knownTypes.add (Class.forName ( nodeTypeNames[i] )); } catch (ClassNotFoundException ex) { //let it be } } Class[] nodeTypes = (Class[])knownTypes.toArray (new Class[0]); nodeFilter = new TreeNodeFilter (nodeTypes, acceptPolicy); } return nodeFilter; } /** */ private void initFields () { acceptPolicy = getNodeFilter().getAcceptPolicy(); Class[] nodeTypes = getNodeFilter().getNodeTypes(); nodeTypeNames = new String [nodeTypes.length]; for (int i = 0; i < nodeTypes.length; i++) { nodeTypeNames[i] = nodeTypes[i].getName(); } } /** */ private void writeObject (ObjectOutputStream oos) throws IOException { initFields(); oos.defaultWriteObject(); } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.