KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > lib > editor > bookmarks > spi > BookmarkManagerSupport


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * 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-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20 package org.netbeans.lib.editor.bookmarks.spi;
21
22 import org.netbeans.lib.editor.bookmarks.BookmarksApiPackageAccessor;
23 import org.netbeans.lib.editor.bookmarks.BookmarksSpiPackageAccessor;
24 import org.netbeans.lib.editor.bookmarks.api.Bookmark;
25 import org.netbeans.lib.editor.bookmarks.api.BookmarkList;
26
27 /**
28  * Supporting methods for a bookmark manager.
29  *
30  * @author Miloslav Metelka
31  */

32
33 public final class BookmarkManagerSupport {
34
35     private static boolean inited;
36
37     public static void initPackageAccess() {
38         if (!inited) {
39             inited = true;
40             BookmarksSpiPackageAccessor.register(new SpiAccessor());
41         }
42     }
43     
44     BookmarkList bookmarkList;
45     
46     /**
47      * Construct manager support for the given bookmark list.
48      * <br>
49      * For SPI accessor only.
50      */

51     BookmarkManagerSupport(BookmarkList bookmarkList) {
52         this.bookmarkList = bookmarkList;
53     }
54     
55     public BookmarkList getBookmarkList() {
56         return bookmarkList;
57     }
58     
59     public Bookmark addBookmark(BookmarkImplementation impl) {
60         return BookmarksApiPackageAccessor.get().addBookmark(bookmarkList, impl);
61     }
62     
63     public BookmarkImplementation getBookmarkImplementation(Bookmark bookmark) {
64         assert (bookmark.getList() == bookmarkList);
65         return BookmarksApiPackageAccessor.get().getBookmarkImplementation(bookmark);
66     }
67     
68     private static final class SpiAccessor extends BookmarksSpiPackageAccessor {
69         
70         public BookmarkManagerSupport createBookmarkManagerSupport(
71         BookmarkList bookmarkList) {
72             return new BookmarkManagerSupport(bookmarkList);
73         }
74
75     }
76 }
77
78
Popular Tags