當前位置: 首頁>>代碼示例>>Java>>正文


Java Lookup.Result方法代碼示例

本文整理匯總了Java中org.openide.util.Lookup.Result方法的典型用法代碼示例。如果您正苦於以下問題:Java Lookup.Result方法的具體用法?Java Lookup.Result怎麽用?Java Lookup.Result使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.openide.util.Lookup的用法示例。


在下文中一共展示了Lookup.Result方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: testSetPairsFire

import org.openide.util.Lookup; //導入方法依賴的package包/類
/** Checks whether setPairs fires correct events.
 */
public void testSetPairsFire () {
    // test setPairs method
    List<Object> li = new ArrayList<Object>();
    li.addAll (Arrays.asList (INSTANCES));
    ic.set (li, null);
    
    Lookup.Result<Integer> res = lookup.lookupResult(Integer.class);
    Iterator<?> all = res.allInstances().iterator();
    checkIterator ("Integer is not there", all, Collections.nCopies (1, INSTANCES[0]));
    
    // change the pairs
    LL listener = new LL (res);
    res.addLookupListener (listener);

    List<Object> l2 = new ArrayList<Object>(li);
    l2.remove (INSTANCES[0]);
    ic.set (l2, null);

    all = lookup.lookupAll(Object.class).iterator();
    checkIterator ("The removed integer is not noticed", all, l2);

    if (listener.getCount () != 1) {
        fail ("Nothing has not been fired");
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:28,代碼來源:AbstractLookupBaseHid.java

示例2: getModelSourceFromSystemWideCatalog

import org.openide.util.Lookup; //導入方法依賴的package包/類
private ModelSource getModelSourceFromSystemWideCatalog(URI locationURI,
        ModelSource modelSourceOfSourceDocument) {
    if( locationURI == null)
        return null;
    
    try {
        Lookup.Template templ = new Lookup.Template(CatalogModel.class);
        Lookup.Result res = Lookup.getDefault().lookup(templ);
        Collection impls = res.allInstances();
        for(Object obj : impls){
            CatalogModel cm = (CatalogModel) obj;
            return cm.getModelSource(locationURI,
                    modelSourceOfSourceDocument);
        }
    } catch (CatalogModelException ex) {
        //return null
    }
    
    return null;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:21,代碼來源:CatalogModelImpl.java

示例3: listFromResult

import org.openide.util.Lookup; //導入方法依賴的package包/類
private <T> List<? extends T> listFromResult(Lookup.Result<T> result) {
    Collection<? extends T> col = result.allInstances();
    Collection<T> tmp = new LinkedHashSet<T>(col);
    if (tmp.size() != col.size()) {
        Collection<T> nt = new ArrayList<T>(tmp.size());
        nt.addAll(tmp);
        col = nt;
    }
    List<? extends T> all;
    if (col instanceof List) {
        all = (List<? extends T>)col;
    } else {
        ArrayList<T> arr = new ArrayList<T>();
        arr.addAll(col);
        all = arr;
    }
    return all;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:19,代碼來源:ContextManager.java

示例4: getTags

import org.openide.util.Lookup; //導入方法依賴的package包/類
public java.lang.String[] getTags () {
    ArrayList<String> list = new ArrayList<String> (6);
    Lookup.Result<org.openide.awt.HtmlBrowser.Factory> r = Lookup.getDefault().lookupResult(org.openide.awt.HtmlBrowser.Factory.class);
    for (Lookup.Item<org.openide.awt.HtmlBrowser.Factory> i: r.allItems()) {
        list.add(i.getDisplayName());
    }
    
    // PENDING need to get rid of this filtering
    FileObject fo = FileUtil.getConfigFile (BROWSER_FOLDER);
    if (fo != null) {
        DataFolder folder = DataFolder.findFolder (fo);
        DataObject [] dobjs = folder.getChildren ();
        for (int i = 0; i<dobjs.length; i++) {
            // Must not be hidden and have to provide instances (we assume instance is HtmlBrowser.Factory)
            if (Boolean.TRUE.equals(dobjs[i].getPrimaryFile().getAttribute(EA_HIDDEN)) ||
                    dobjs[i].getCookie(InstanceCookie.class) == null) {
                FileObject fo2 = dobjs[i].getPrimaryFile();
                String n = fo2.getName();
                try {
                    n = fo2.getFileSystem().getDecorator().annotateName(n, dobjs[i].files());
                } catch (FileStateInvalidException e) {
                    // Never mind.
                }
                list.remove(n);
            }
        }
    }
    String[] retValue = new String[list.size ()];
    
    list.toArray (retValue);
    return retValue;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:33,代碼來源:HtmlBrowser.java

示例5: beforeLookup

import org.openide.util.Lookup; //導入方法依賴的package包/類
@Override
protected void beforeLookup (org.openide.util.Lookup.Template template) {
    super.beforeLookup (template);
    if (allQueries != null && in.get () == null) {
        in.set (this);
        Lookup.Result res = lookup (template);
        allQueries.add (res);
        in.set (null);
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:11,代碼來源:SimpleProxyLookupIssue42244Test.java

示例6: doTestNodes

import org.openide.util.Lookup; //導入方法依賴的package包/類
/** Test to find nodes.
 */
private <T> void doTestNodes(Node[] arr, Class<T> c, int cnt) {
    LOG.fine("setActivatedNodes: " + arr);
    if (arr != null) {
        top.setActivatedNodes(arr);
    }
    
    assertNotNull("At least one node is registered", lookup.lookup(c));
    LOG.fine("before lookup");
    Lookup.Result<T> res = lookup.lookup(new Lookup.Template<T>(c));
    Collection<? extends Lookup.Item<T>> coll = res.allItems();
    LOG.fine("after lookup");
    assertEquals("Two registered: " + coll, cnt, coll.size());
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:16,代碼來源:TopComponentGetLookupTest.java

示例7: getTypesResult

import org.openide.util.Lookup; //導入方法依賴的package包/類
/** Result containing all current services. */
private Lookup.Result<ServiceType> getTypesResult() {
    boolean init = false;
    synchronized (this) {
        if (allTypes == null) {
            allTypes = Lookup.getDefault().lookupResult(ServiceType.class);
            allTypes.addLookupListener(this);
            init = true;
        }
    }
    if (init) resultChanged(null);
    return allTypes;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:14,代碼來源:Services.java

示例8: collectIndexerFactoriesRegisteredForAllLanguages

import org.openide.util.Lookup; //導入方法依賴的package包/類
/**
 * This method should not be called when holding any lock since it calls
 * Lookup.Result.allInstances which can block.
 * @param factories - non null map for collecting results
 */
private void collectIndexerFactoriesRegisteredForAllLanguages(Map<T, Set<String>> factories) {
    Lookup.Result<T> r = tracker.getLookupData(ALL_MIME_TYPES);
    for (T factory : r.allInstances()) {
        Set<String> mimeTypes = factories.get(factory);
        if (mimeTypes == null) {
            mimeTypes = new HashSet<String>();
            mimeTypes.add(ALL_MIME_TYPES);
            factories.put(factory, mimeTypes);
        } // else the factory is already in the map (this should not happen unless ill configured in the layer)
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:17,代碼來源:IndexerCache.java

示例9: testLookupListener

import org.openide.util.Lookup; //導入方法依賴的package包/類
/** Test of firing events. */
public void testLookupListener() {
    Object inst = 10;
    Lookup.Result<?> res = lookup.lookupResult(inst.getClass());
    res.allInstances ();
    
    LL listener = new LL(res);
    res.addLookupListener(listener);
    
    ic.add(inst);
    if (listener.getCount() == 0) {
        fail("None event fired during NbLookup.addPair()");
    }
    
    ic.remove(inst);
    if (listener.getCount() == 0) {
        fail("None event fired during NbLookup.removePair()");
    }
    
    ic.add(inst);
    if (listener.getCount() == 0) {
        fail("None event fired during second NbLookup.addPair()");
    }
    
    ic.remove(inst);
    if (listener.getCount() == 0) {
        fail("None event fired during second NbLookup.removePair()");
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:30,代碼來源:AbstractLookupBaseHid.java

示例10: isEnabled

import org.openide.util.Lookup; //導入方法依賴的package包/類
/** Checks whether a type is enabled.
 */
public <T> boolean isEnabled(Class<T> type, ContextSelection selectMode, ContextAction.Performer<? super T> enabler) {
    Lookup.Result<T> result = findResult(type);
    
    boolean e = isEnabledOnData(result, type, selectMode);
    if (e && enabler != null) {
        e = enabler.enabled(listFromResult(result));
    }
    
    return e;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:13,代碼來源:ContextManager.java

示例11: registerLookupListenerAndAddSomething

import org.openide.util.Lookup; //導入方法依賴的package包/類
private void registerLookupListenerAndAddSomething(boolean useProxy, boolean callAllInstances, boolean inheritanceTree) {
    called = false;
    InstanceContent aInstanceContent = new InstanceContent();
    Storage<?> s = inheritanceTree ? new InheritanceTree() : new ArrayStorage();
    Lookup aLookup = new AbstractLookup(aInstanceContent, s);
    if (useProxy) {
        aLookup = new ProxyLookup(aLookup);
    }
    Lookup.Result<ObjectInLookup> result = aLookup.lookupResult(ObjectInLookup.class);
    if (callAllInstances) {
        result.allInstances(); // TO GET SUCCESS
    }
    result.addLookupListener(new LookupListener() {

        public void resultChanged(LookupEvent ev) {
            Lookup.Result aResult = (Lookup.Result) ev.getSource();
            Collection c = aResult.allInstances();
            if (!c.isEmpty()) {
                called = true;
            }
        }
    });

    aInstanceContent.set(Collections.singleton(
            new ObjectInLookup("Set Object in Lookup)")), null);
    Assert.assertTrue("Listener was notified", called);
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:28,代碼來源:ProxyLookup173975Test.java

示例12: lookup

import org.openide.util.Lookup; //導入方法依賴的package包/類
public Lookup.Result lookup(Lookup.Template template) {
    
    if (template.getType() == ActionMap.class || (template.getId() != null && template.getId().equals("javax.swing.ActionMap"))) {
        return initial.lookup(template);
    }
    Lookup.Result retValue;
    retValue = proxy.lookup(template);
    retValue = new ExclusionResult(retValue);
    return retValue;
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:11,代碼來源:MultiViewTopComponentLookup.java

示例13: updateLookups

import org.openide.util.Lookup; //導入方法依賴的package包/類
/** Extracts activated nodes from a top component and
 * returns their lookups.
 */
public void updateLookups(Node[] arr) {
    if (arr == null) {
        arr = new Node[0];
    }

    Lookup[] lookups = new Lookup[arr.length];

    Map<Lookup, Lookup.Result> copy;

    synchronized (this) {
        if (attachedTo == null) {
            copy = Collections.<Lookup, Lookup.Result>emptyMap();
        } else {
            copy = new HashMap<Lookup, Lookup.Result>(attachedTo);
        }
    }

    for (int i = 0; i < arr.length; i++) {
        lookups[i] = arr[i].getLookup();

        if (copy != null) {
            // node arr[i] remains there, so do not remove it
            copy.remove(arr[i]);
        }
    }

    for (Iterator<Lookup.Result> it = copy.values().iterator(); it.hasNext();) {
        Lookup.Result res = it.next();
        res.removeLookupListener(listener);
    }

    synchronized (this) {
        attachedTo = null;
    }

    setLookups(new Lookup[] { new NoNodeLookup(new ProxyLookup(lookups), arr), Lookups.fixed((Object[])arr), actionMap, });
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:41,代碼來源:DefaultEMLookup.java

示例14: resultChanged

import org.openide.util.Lookup; //導入方法依賴的package包/類
@Override
public final void resultChanged(LookupEvent ev) {
    PageInspector pageInspector = PageInspector.getDefault();
    if (pageInspector != null) {
        Lookup.Result lookupResult = (Lookup.Result) ev.getSource();
        lookupResult.removeLookupListener(this);
        pageInspector.addPropertyChangeListener(this);
    }
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:10,代碼來源:CssStylesTCController.java

示例15: testRemovingMimePath

import org.openide.util.Lookup; //導入方法依賴的package包/類
public void testRemovingMimePath() throws Exception {
    // Create the mime path folders and add some instance
    TestUtilities.createFile(getWorkDir(), "Editors/text/x-jsp/text/x-java/org-netbeans-modules-editor-mimelookup-impl-DummySettingImpl.instance");
    TestUtilities.sleepForWhile();

    // Create lookup over an existing mime path
    Lookup lookup = new SwitchLookup(MimePath.parse("text/x-jsp/text/x-java"));
    Lookup.Result result = lookup.lookupResult(DummySetting.class);
    L listener = new L();
    
    result.addLookupListener(listener);
    Collection instances = result.allInstances();

    assertEquals("There should be no change events", 0, listener.resultChangedCnt);
    assertEquals("Wrong number of instances", 1, instances.size());
    assertEquals("Wrong instance", DummySettingImpl.class, instances.iterator().next().getClass());
    
    // Delete the mime path folder
    TestUtilities.deleteFile(getWorkDir(), "Editors/text/x-jsp/text");
    TestUtilities.sleepForWhile();

    // Lookup the instances again
    instances = lookup.lookupAll(DummySetting.class);
    
    assertEquals("Wrong number of change events", 1, listener.resultChangedCnt);
    assertEquals("Wrong number of instances", 0, instances.size());
}
 
開發者ID:apache,項目名稱:incubator-netbeans,代碼行數:28,代碼來源:SwitchLookupTest.java


注:本文中的org.openide.util.Lookup.Result方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。