Search in sources :

Example 6 with ApplicationElement

use of org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ApplicationElement in project jbosstools-openshift by jbosstools.

the class OpenShiftApplicationExplorerContentProvider method getChildren.

private Object[] getChildren(ComponentElement parentElement) {
    try {
        List<Object> childs = new ArrayList<>();
        ApplicationElement application = parentElement.getParent();
        ProjectElement project = application.getParent();
        ApplicationExplorerUIModel cluster = project.getParent();
        cluster.getOdo().getStorages(project.getWrapped(), application.getWrapped().getName(), parentElement.getWrapped().getPath(), parentElement.getWrapped().getName()).forEach(storage -> childs.add(new StorageElement(storage, parentElement)));
        cluster.getOdo().listURLs(project.getWrapped(), application.getWrapped().getName(), parentElement.getWrapped().getPath(), parentElement.getWrapped().getName()).forEach(url -> childs.add(new URLElement(url, parentElement)));
        return childs.toArray();
    } catch (IOException e) {
        return new Object[] { "Can't list storages or urls" };
    }
}
Also used : ApplicationElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ApplicationElement) ApplicationExplorerUIModel(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ApplicationExplorerUIModel) StorageElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.StorageElement) ProjectElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ProjectElement) ArrayList(java.util.ArrayList) IOException(java.io.IOException) URLElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.URLElement)

Example 7 with ApplicationElement

use of org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ApplicationElement in project jbosstools-openshift by jbosstools.

the class DeleteHandler method execute.

private void execute(Odo odo, AbstractOpenshiftUIElement<?, ?, ?> element) {
    try {
        if (element instanceof ProjectElement) {
            odo.deleteProject(((ProjectElement) element).getWrapped());
        } else if (element instanceof ApplicationElement) {
            odo.deleteApplication(((ApplicationElement) element).getParent().getWrapped(), ((ApplicationElement) element).getWrapped().getName());
        } else if (element instanceof ComponentElement) {
            ComponentElement component = (ComponentElement) element;
            odo.deleteComponent(component.getParent().getParent().getWrapped(), component.getParent().getWrapped().getName(), component.getWrapped().getPath(), component.getWrapped().getName(), component.getWrapped().getInfo().getComponentKind());
            if (component.getWrapped().hasContext()) {
                component.getRoot().removeContext(component.getWrapped().getPath());
            }
        } else if (element instanceof ServiceElement) {
            odo.deleteService(((ServiceElement) element).getParent().getParent().getWrapped(), ((ServiceElement) element).getParent().getWrapped().getName(), ((ServiceElement) element).getWrapped());
        } else if (element instanceof URLElement) {
            odo.deleteURL(((URLElement) element).getParent().getParent().getParent().getWrapped(), ((URLElement) element).getParent().getParent().getWrapped().getName(), ((URLElement) element).getParent().getWrapped().getPath(), ((URLElement) element).getParent().getWrapped().getName(), ((URLElement) element).getWrapped().getName());
        } else if (element instanceof StorageElement) {
            odo.deleteStorage(((StorageElement) element).getParent().getParent().getParent().getWrapped(), ((StorageElement) element).getParent().getParent().getWrapped().getName(), ((StorageElement) element).getParent().getWrapped().getPath(), ((StorageElement) element).getParent().getWrapped().getName(), ((StorageElement) element).getWrapped().getName());
        } else if (element instanceof DevfileRegistryElement) {
            odo.deleteDevfileRegistry(((DevfileRegistryElement) element).getWrapped().getName());
        }
        element.getParent().refresh();
    } catch (IOException e) {
        Display.getDefault().asyncExec(() -> MessageDialog.openError(Display.getDefault().getActiveShell(), "Delete", "Delete error:" + e.getLocalizedMessage()));
    }
}
Also used : DevfileRegistryElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.DevfileRegistryElement) ApplicationElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ApplicationElement) StorageElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.StorageElement) ProjectElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ProjectElement) IOException(java.io.IOException) ComponentElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ComponentElement) URLElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.URLElement) ServiceElement(org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ServiceElement)

Aggregations

ApplicationElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ApplicationElement)7 IOException (java.io.IOException)6 ProjectElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ProjectElement)6 ISelection (org.eclipse.jface.viewers.ISelection)3 ComponentElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ComponentElement)3 ServiceElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ServiceElement)3 ArrayList (java.util.ArrayList)2 Odo (org.jboss.tools.openshift.core.odo.Odo)2 ApplicationExplorerUIModel (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.ApplicationExplorerUIModel)2 StorageElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.StorageElement)2 URLElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.URLElement)2 KubernetesClientException (io.fabric8.kubernetes.client.KubernetesClientException)1 IWizard (org.eclipse.jface.wizard.IWizard)1 Shell (org.eclipse.swt.widgets.Shell)1 Application (org.jboss.tools.openshift.core.odo.Application)1 ServiceTemplate (org.jboss.tools.openshift.core.odo.ServiceTemplate)1 DevfileRegistryComponentTypeElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.DevfileRegistryComponentTypeElement)1 DevfileRegistryComponentTypeStarterElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.DevfileRegistryComponentTypeStarterElement)1 DevfileRegistryElement (org.jboss.tools.openshift.internal.ui.models.applicationexplorer.DevfileRegistryElement)1 CreateServiceWizard (org.jboss.tools.openshift.internal.ui.wizard.applicationexplorer.CreateServiceWizard)1