org.openide.util.Lookup类的使用及代码示例

x33g5p2x  于2022-01-23 转载在 其他  
字(9.9k)|赞(0)|评价(0)|浏览(243)

本文整理了Java中org.openide.util.Lookup类的一些代码示例,展示了Lookup类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Lookup类的具体详情如下:
包路径:org.openide.util.Lookup
类名称:Lookup

Lookup介绍

[英]A general registry permitting clients to find instances of services (implementation of a given interface). This class is inspired by the Jini registration and lookup mechanism. The difference is that the methods do not throw checked exceptions (as they usually work only locally and not over the network) and that the Lookup API concentrates on the lookup, not on the registration (although Lookup#getDefault is strongly encouraged to support Lookups#metaInfServices for registration in addition to whatever else it decides to support).

For a general talk about the idea behind the lookup pattern please see

代码示例

代码示例来源:origin: org.netbeans.api/org-openide-util

/** Lazy create default NB classloader for use during deserialization. */
private static ClassLoader getNBClassLoader() {
  ClassLoader c = Lookup.getDefault().lookup(ClassLoader.class);
  return (c != null) ? c : ClassLoader.getSystemClassLoader();
}

代码示例来源:origin: org.netbeans.api/org-openide-util

/**
 * Displays the help page in a supported viewer, if any.
 * @return true if this help was displayed successfully
 * @since 8.21
 * @see org.openide.util.HelpCtx.Displayer#display
 */
public boolean display() {
  for (Displayer d : Lookup.getDefault().lookupAll(Displayer.class)) {
    if (d.display(this)) {
      return true;
    }
  }
  return false;
}

代码示例来源:origin: org.netbeans.api/org-openide-filesystems

/** Reset cache, for use from unit tests. */
static void reset() {
  cache = null;
  result = Lookup.getDefault().lookupResult(URLMapper.class);
  result.addLookupListener(
    new LookupListener() {
      public void resultChanged(LookupEvent ev) {
        synchronized (URLMapper.class) {
          cache = null;
        }
      }
    }
  );
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-php-project

/**
 * Get a PHP project for the given FileObject.
 * @return a PHP project or <code>null</code>.
 */
public static PhpProject getPhpProject(FileObject fo) {
  assert fo != null;
  Project project = FileOwnerQuery.getOwner(fo);
  if (project == null) {
    return null;
  }
  return project.getLookup().lookup(PhpProject.class);
}

代码示例来源:origin: org.netbeans.api/org-openide-filesystems

private static Lookup[] computeDelegates(String p, List<FOItem> items, Lookup lkp) {
  FileObject fo = FileUtil.getConfigFile(p);
  List<Lookup> delegates = new LinkedList<Lookup>();
  delegates.add(lkp);
  if (fo != null) {
    for (FileObject f : fo.getChildren()) {
      if (f.isFolder()) {
        delegates.add(new OverFiles(f.getPath()));
      } else {
        if (f.hasExt("shadow")) {
          Object real = f.getAttribute("originalFile"); // NOI18N
          if (real instanceof String) {
            f = FileUtil.getConfigFile((String)real);
  ClassLoader l = Lookup.getDefault().lookup(ClassLoader.class);
  if (l == null) {
    l = Thread.currentThread().getContextClassLoader();

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-php-project

private FileObject getFileObject() {
    FileObject fileObject = originalNode.getLookup().lookup(FileObject.class);
    if (fileObject != null) {
      return fileObject;
    }
    // just fallback, should not happen
    DataObject dataObject = originalNode.getLookup().lookup(DataObject.class);
    assert dataObject != null;
    fileObject = dataObject.getPrimaryFile();
    assert fileObject != null;
    return fileObject;
  }
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-cnd-editor

public static int getGlobalTabSize(){
  Preferences global = MimeLookup.getLookup(MimePath.EMPTY).lookup(Preferences.class);
  if (global != null) {
    return global.getInt(SimpleValueNames.TAB_SIZE, tabSizeDefault);
  }
  return tabSizeDefault;
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-cnd-completion

public static String[] getCppAutoCompletionTrigers() {
  String mimeType = MIMENames.SOURCES_MIME_TYPE; // now all settings are from C++
  Preferences prefs = MimeLookup.getLookup(mimeType).lookup(Preferences.class);
  return prefs.get(CPP_AUTO_COMPLETION_TRIGGERS, CPP_AUTO_COMPLETION_TRIGGERS_DEFAULT).split(";"); //NOI18N
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-javafx2-project

public static void cleanup(Lookup context) {
  Project proj = context.lookup(Project.class);
  String projDir = proj.getProjectDirectory().getPath();
  propInstance.remove(projDir);
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-cnd-editor

public static boolean getGlobalExpandTabs(){
  Preferences global = MimeLookup.getLookup(MimePath.EMPTY).lookup(Preferences.class);
  if (global != null) {
    return global.getBoolean(SimpleValueNames.EXPAND_TABS, expandTabToSpacesDefault);
  }
  return expandTabToSpacesDefault;
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-web-clientproject

public ContextAction(Lookup context) {
  super(NbBundle.getMessage(BowerInstallAction.class, "CTL_BowerInstallAction"));
  Project p = context.lookup(Project.class);
  if (p!=null) {
    bower_json = p.getProjectDirectory().getFileObject("bower.json");//NOI18N
  } else {
    DataObject dob = context.lookup(DataObject.class);
    bower_json = dob.getPrimaryFile();
  }
  setEnabled(bower_json!=null);
  putValue(DynamicMenuContent.HIDE_WHEN_DISABLED, true);
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-hudson-maven

private FileObject pom(Project p) {
  if (p.getLookup().lookup(NbMavenProject.class) == null) {
    return null;
  }
  return p.getProjectDirectory().getFileObject("pom.xml"); // NOI18N
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-groovy-grailsproject

@Override
  protected boolean enable(Node[] activatedNodes) {
    if (activatedNodes.length == 0) {
      return false;
    }
    DataObject dataObject = activatedNodes[0].getLookup().lookup(DataObject.class);

    if (dataObject == null || dataObject.getFolder() == null) {
      return false;
    }

    Project prj = FileOwnerQuery.getOwner(dataObject.getFolder().getPrimaryFile());
    if (prj == null) {
      return false;
    }
    FileObject domainDir = prj.getProjectDirectory().getFileObject(DOMAIN_DIR);
    if (domainDir == null) {
      return false;
    }

    return FileUtil.isParentOf(domainDir, dataObject.getPrimaryFile());
  }
}

代码示例来源:origin: nl.cloudfarming.client/farm-project

@Override
  public void saveProject(final Project project) throws IOException, ClassCastException {
    FileObject projectRoot = project.getProjectDirectory();
    FarmManager farmManager = Lookup.getDefault().lookup(FarmManager.class);
    Farm farm = project.getLookup().lookup(Farm.class);
    farmManager.save(farm, projectRoot.createData(FarmProject.FARM_FILE));
  }
}

代码示例来源:origin: org.netbeans.api/org-netbeans-modules-java-source-base

FileObject doCreateFromTemplate(FileObject template, JavaFileObject sourceFile) throws IOException {
  FileObject scratchFolder = FileUtil.createMemoryFileSystem().getRoot();
  String name = FileObjects.getName(sourceFile, false);
  if (template == null) {
    return FileUtil.createData(scratchFolder, name);
  }
  FileObjectFromTemplateCreator creator = Lookup.getDefault().lookup(FileObjectFromTemplateCreator.class);
  if (creator == null) {
    return FileUtil.createData(scratchFolder, name);
  }
  File pack = BaseUtilities.toFile(sourceFile.toUri()).getParentFile();
  while (FileUtil.toFileObject(pack) == null) {
    pack = pack.getParentFile();
  }
  FileObject targetFolder = FileUtil.toFileObject(pack);
  scratchFolder.setAttribute(FileObjectFromTemplateCreator.ATTR_ORIG_FILE, targetFolder);
  return creator.create(template, scratchFolder, name);
}

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-javaee-project

void setProject(Project project) {
  // initialize visual components
  //#118047 avoid using the EarProject instance directly to allow for alternate implementations.
  EarImplementation projectEar = project.getLookup().lookup(EarImplementation.class);
  fileNameText.setText(FILE_DD);
  projectText.setText(ProjectUtils.getInformation(project).getDisplayName());
  // a nasty fallback to getProjectDirectory if the metainf folder doesn't exist.
  // not sure if there are ways of checking for the right location and creating it upon request.
  FileObject docBase = projectEar != null ? projectEar.getMetaInf() : project.getProjectDirectory(); 
  locationText.setText(FileUtil.getFileDisplayName(docBase));
  refreshLocation();
  locationText.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent actionEvent) {
      refreshLocation();
    }
  });
}

代码示例来源:origin: org.gephi/desktop-recent-files

@Override
  public void actionPerformed(ActionEvent e) {
    FileObject fileObject = FileUtil.toFileObject(file);
    if (fileObject.hasExt(GEPHI_EXTENSION)) {
      ProjectControllerUI pc = Lookup.getDefault().lookup(ProjectControllerUI.class);
      try {
        pc.openProject(file);
      } catch (Exception ex) {
        Exceptions.printStackTrace(ex);
      }
    } else {
      ImportControllerUI importController = Lookup.getDefault().lookup(ImportControllerUI.class);
      if (importController.getImportController().isFileSupported(file)) {
        importController.importFile(fileObject);
      }
    }
  }
});

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-cnd-source

@Override
protected Pane createPane() {
  // if there is a CndPaneProvider, us it
  CndPaneProvider paneProvider = Lookup.getDefault().lookup(CndPaneProvider.class);
  if (paneProvider != null) {
    Pane pane = paneProvider.createPane(this);
    if (pane != null) {
      return pane;
    }
  }
  return (CloneableEditorSupport.Pane) MultiViews.createCloneableMultiView(getDataObject().getPrimaryFile().getMIMEType(), getDataObject());
}

代码示例来源:origin: nl.cloudfarming.client/field-project

@Override
  public Transferable paste() throws IOException {
    FileObject fieldsFolder = getLookup().lookup(FileObject.class);
    String name = FileUtil.findFreeFileName(fieldsFolder, field.getName(), Field.EXT);
    LOGGER.log(Level.FINEST, "found free filename: {0}", name);
    FileObject fieldFile = fieldsFolder.createData(name, Field.EXT);
    FieldManager fieldManager = Lookup.getDefault().lookup(FieldManager.class);
    fieldManager.save(field, fieldFile);
    return null;
  }
};

代码示例来源:origin: org.netbeans.modules/org-netbeans-modules-web-refactoring

private String getTargetPackageName(FileObject fo){
  String newPackageName = RefactoringUtil.getPackageName(move.getTarget().lookup(URL.class));
  String postfix = FileUtil.getRelativePath(this.folder.getParent(), fo).replace('/', '.');
  if (newPackageName.length() == 0){
    return postfix;
  }
  if (postfix.length() == 0){
    return newPackageName;
  }
  return newPackageName + "." + postfix;
}

相关文章

微信公众号

最新文章

更多