Package com.onpositive.gae.tools.core

Source Code of com.onpositive.gae.tools.core.WebRootDirProvider

package com.onpositive.gae.tools.core;

import java.io.File;

import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.preference.IPreferenceNode;
import org.eclipse.jface.preference.PreferenceDialog;
import org.eclipse.jface.preference.PreferenceManager;
import org.eclipse.jface.preference.PreferenceNode;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.IWorkbenchPropertyPage;

import com.onpositive.gae.tools.WebRootDirStorage;

public class WebRootDirProvider {

  public static IContainer calculate(IProject project) {
    String[] webDir = null;
    try {
      String tmp = null;
      tmp = WebRootDirStorage.getWebRoot(project);
      if (tmp != null && tmp.length() > 0) {
        webDir = tmp.split("\\" + File.separator);
      }

    } catch (CoreException e) {
      e.printStackTrace();
    }
    if (webDir == null) {
      webDir = new String[] { "war" };
    }
    IContainer warFolder = project;
    for (String s : webDir) {
      if (warFolder instanceof IFolder) {
        warFolder = ((IFolder) warFolder).getFolder(s);
      }
      if (warFolder instanceof IProject) {
        warFolder = ((IProject) warFolder).getFolder(s);
      }
    }
    // project.getFolder(webDir);
    return warFolder;
  }

  public static void showPropPage(final IProject project) {

    Display.getDefault().syncExec(new Runnable() {

     
      public void run() {
        MessageDialog.openError(Display.getDefault().getActiveShell(),
            "Error", "War directory did not found.");
        // PreferenceDialog createPreferenceDialogOn = PreferencesUtil
        // .createPropertyDialogOn(Display.getDefault()
        // .getActiveShell(), project,
        // "com.onpositive.gae.tools.core.pages",
        // new String[]{"com.onpositive.gae.tools.core.weblocation"},
        // project);
        // createPreferenceDialogOn.open();

        IWorkbenchPropertyPage page = new WebDirectoryLocation();
        page.setElement(project);
        PreferenceManager mgr = new PreferenceManager();
        IPreferenceNode node = new PreferenceNode("1", page);

        mgr.addToRoot(node);
        PreferenceDialog dialog = new PreferenceDialog(Display
            .getDefault().getActiveShell(), mgr);
        dialog.create();
        dialog.setMessage(page.getTitle());
        dialog.open();
      }

    });

  }
}
TOP

Related Classes of com.onpositive.gae.tools.core.WebRootDirProvider

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.