|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2001 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.mdr.util; import java.util.*; /** * * @author Martin Matula * @version */ public abstract class AbstractLazyList extends AbstractList { private final Object innerList[]; public AbstractLazyList() { super(); innerList = null; } public AbstractLazyList(Collection elements) { super(); innerList = elements.toArray(); } protected abstract Object wrap(Object o); protected abstract boolean isWrapped(Object o); public int size() { return innerList.length; } public Object get(int p) { if (!isWrapped(innerList[p])) synchronized (innerList) { if (!isWrapped(innerList[p])) { innerList[p] = wrap(innerList[p]); } } return innerList[p]; } } |
... 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.