01: /*
02: * The contents of this file are subject to the terms of the Common Development
03: * and Distribution License (the License). You may not use this file except in
04: * compliance with the License.
05: *
06: * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
07: * or http://www.netbeans.org/cddl.txt.
08: *
09: * When distributing Covered Code, include this CDDL Header Notice in each file
10: * and include the License file at http://www.netbeans.org/cddl.txt.
11: * If applicable, add the following below the CDDL Header, with the fields
12: * enclosed by brackets [] replaced by your own identifying information:
13: * "Portions Copyrighted [year] [name of copyright owner]"
14: *
15: * The Original Software is NetBeans. The Initial Developer of the Original
16: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17: * Microsystems, Inc. All Rights Reserved.
18: */
19:
20: package org.netbeans.spi.project.libraries;
21:
22: import java.net.URL;
23:
24: /**
25: * Abstract location where zero or more libraries are defined.
26: * {@link Object#equals} and {@link Object#hashCode} are expected to be defined
27: * such that object identity (within the implementing class) are driven by {@link #getLocation}.
28: * @see ArealLibraryProvider
29: * @since org.netbeans.modules.project.libraries/1 1.15
30: */
31: public interface LibraryStorageArea {
32:
33: /**
34: * Gets an associated storage location.
35: * The contents of the URL (if it is even accessible) are unspecified.
36: * @return an associated URL uniquely identifying this location
37: */
38: URL getLocation();
39:
40: /**
41: * Gets a human-readable display label for this area.
42: * @return a localized display name
43: */
44: String getDisplayName();
45:
46: }
|