Search in sources :

Example 11 with Node

use of org.netxms.client.objects.Node in project netxms by netxms.

the class NodeBrowser method onCreateContextMenu.

/* (non-Javadoc)
	 * @see android.app.Activity#onCreateContextMenu(android.view.ContextMenu, android.view.View, android.view.ContextMenu.ContextMenuInfo)
	 */
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
    android.view.MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.node_actions, menu);
    AdapterView.AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
    selectedObject = (AbstractObject) adapter.getItem(info.position);
    GeoLocation gl = selectedObject.getGeolocation();
    if ((gl == null) || (gl.getType() == GeoLocation.UNSET)) {
        hideMenuItem(menu, R.id.navigate_to);
    }
    if (selectedObject instanceof Node) {
        // add available tools to context menu
        List<ObjectTool> tools = service.getTools();
        if (tools != null) {
            SubMenu subMenu = menu.addSubMenu(Menu.NONE, 0, 0, getString(R.string.menu_tools));
            Iterator<ObjectTool> tl = tools.iterator();
            ObjectTool tool;
            while (tl.hasNext()) {
                tool = tl.next();
                switch(tool.getToolType()) {
                    case ObjectTool.TYPE_INTERNAL:
                    case ObjectTool.TYPE_ACTION:
                    case ObjectTool.TYPE_SERVER_COMMAND:
                    case ObjectTool.TYPE_SERVER_SCRIPT:
                        if (tool.isApplicableForNode((Node) selectedObject))
                            subMenu.add(Menu.NONE, (int) tool.getId(), 0, tool.getDisplayName());
                        break;
                }
            }
        }
    } else {
        hideMenuItem(menu, R.id.find_switch_port);
        hideMenuItem(menu, R.id.poll);
    }
}
Also used : AdapterContextMenuInfo(android.widget.AdapterView.AdapterContextMenuInfo) Node(org.netxms.client.objects.Node) AdapterView(android.widget.AdapterView) SubMenu(android.view.SubMenu) GeoLocation(org.netxms.base.GeoLocation) AdapterContextMenuInfo(android.widget.AdapterView.AdapterContextMenuInfo) ObjectTool(org.netxms.client.objecttools.ObjectTool)

Example 12 with Node

use of org.netxms.client.objects.Node in project netxms by netxms.

the class UploadFileToAgent method selectionChanged.

/**
 * @see IActionDelegate#selectionChanged(IAction, ISelection)
 */
@SuppressWarnings("rawtypes")
public void selectionChanged(IAction action, ISelection selection) {
    nodes.clear();
    if (!(selection instanceof IStructuredSelection)) {
        action.setEnabled(false);
        return;
    }
    Iterator it = ((IStructuredSelection) selection).iterator();
    while (it.hasNext()) {
        Object object = it.next();
        if (object instanceof Node) {
            nodes.add(((Node) object).getObjectId());
        } else if ((object instanceof Container) || (object instanceof ServiceRoot) || (object instanceof Subnet) || (object instanceof EntireNetwork)) {
            Set<AbstractObject> set = ((AbstractObject) object).getAllChilds(AbstractObject.OBJECT_NODE);
            for (AbstractObject o : set) nodes.add(o.getObjectId());
        }
    }
    action.setEnabled(nodes.size() > 0);
}
Also used : Container(org.netxms.client.objects.Container) HashSet(java.util.HashSet) Set(java.util.Set) Node(org.netxms.client.objects.Node) AbstractObject(org.netxms.client.objects.AbstractObject) Iterator(java.util.Iterator) AbstractObject(org.netxms.client.objects.AbstractObject) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) Subnet(org.netxms.client.objects.Subnet) EntireNetwork(org.netxms.client.objects.EntireNetwork) ServiceRoot(org.netxms.client.objects.ServiceRoot)

Example 13 with Node

use of org.netxms.client.objects.Node in project netxms by netxms.

the class AgentFileManager method createPartControl.

/*
    * (non-Javadoc)
    * 
    * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
    */
@Override
public void createPartControl(Composite parent) {
    content = new Composite(parent, SWT.NONE);
    content.setLayout(new FormLayout());
    // Create filter area
    filterText = new FilterText(content, SWT.NONE);
    filterText.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            onFilterModify();
        }
    });
    // $NON-NLS-1$
    String os = ((Node) session.findObjectById(objectId)).getSystemDescription();
    if (// if OS is windows don't show group and access rights columns //$NON-NLS-1$
    os.contains("Windows")) {
        final String[] columnNames = { Messages.get().AgentFileManager_ColName, Messages.get().AgentFileManager_ColType, Messages.get().AgentFileManager_ColSize, Messages.get().AgentFileManager_ColDate, Messages.get().AgentFileManager_ColOwner };
        final int[] columnWidths = { 300, 120, 150, 150, 150 };
        viewer = new SortableTreeViewer(content, columnNames, columnWidths, 0, SWT.UP, SortableTableViewer.DEFAULT_STYLE);
    } else {
        final String[] columnNames = { Messages.get().AgentFileManager_ColName, Messages.get().AgentFileManager_ColType, Messages.get().AgentFileManager_ColSize, Messages.get().AgentFileManager_ColDate, Messages.get().AgentFileManager_ColOwner, Messages.get().AgentFileManager_ColGroup, Messages.get().AgentFileManager_ColAccessRights };
        final int[] columnWidths = { 300, 120, 150, 150, 150, 150, 200 };
        viewer = new SortableTreeViewer(content, columnNames, columnWidths, 0, SWT.UP, SortableTableViewer.DEFAULT_STYLE);
    }
    WidgetHelper.restoreTreeViewerSettings(viewer, Activator.getDefault().getDialogSettings(), TABLE_CONFIG_PREFIX);
    viewer.setContentProvider(new ViewAgentFilesProvider());
    viewer.setLabelProvider(new AgentFileLabelProvider());
    viewer.setComparator(new AgentFileComparator());
    filter = new AgentFileFilter();
    viewer.addFilter(filter);
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            if (selection != null) {
                actionDelete.setEnabled(selection.size() > 0);
                actionCalculateFolderSize.setEnabled(selection.size() > 0);
            }
        }
    });
    viewer.getTree().addDisposeListener(new DisposeListener() {

        @Override
        public void widgetDisposed(DisposeEvent e) {
            WidgetHelper.saveTreeViewerSettings(viewer, Activator.getDefault().getDialogSettings(), TABLE_CONFIG_PREFIX);
        }
    });
    enableDragSupport();
    enableDropSupport();
    enableInPlaceRename();
    // Setup layout
    FormData fd = new FormData();
    fd.left = new FormAttachment(0, 0);
    fd.top = new FormAttachment(filterText);
    fd.right = new FormAttachment(100, 0);
    fd.bottom = new FormAttachment(100, 0);
    viewer.getTree().setLayoutData(fd);
    fd = new FormData();
    fd.left = new FormAttachment(0, 0);
    fd.top = new FormAttachment(0, 0);
    fd.right = new FormAttachment(100, 0);
    filterText.setLayoutData(fd);
    createActions();
    contributeToActionBars();
    createPopupMenu();
    activateContext();
    filterText.setCloseAction(actionShowFilter);
    // Set initial focus to filter input line
    if (initShowFilter)
        filterText.setFocus();
    else
        // Will hide filter area correctly
        enableFilter(false);
    refreshFileList();
}
Also used : FormLayout(org.eclipse.swt.layout.FormLayout) FormData(org.eclipse.swt.layout.FormData) SortableTreeViewer(org.netxms.ui.eclipse.widgets.SortableTreeViewer) DisposeListener(org.eclipse.swt.events.DisposeListener) Composite(org.eclipse.swt.widgets.Composite) ModifyListener(org.eclipse.swt.events.ModifyListener) ViewAgentFilesProvider(org.netxms.ui.eclipse.filemanager.views.helpers.ViewAgentFilesProvider) Node(org.netxms.client.objects.Node) ISelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener) SelectionChangedEvent(org.eclipse.jface.viewers.SelectionChangedEvent) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) AgentFileComparator(org.netxms.ui.eclipse.filemanager.views.helpers.AgentFileComparator) DisposeEvent(org.eclipse.swt.events.DisposeEvent) ModifyEvent(org.eclipse.swt.events.ModifyEvent) FilterText(org.netxms.ui.eclipse.widgets.FilterText) AgentFileFilter(org.netxms.ui.eclipse.filemanager.views.helpers.AgentFileFilter) AgentFileLabelProvider(org.netxms.ui.eclipse.filemanager.views.helpers.AgentFileLabelProvider) FormAttachment(org.eclipse.swt.layout.FormAttachment)

Example 14 with Node

use of org.netxms.client.objects.Node in project netxms by netxms.

the class ServiceComponents method addServiceComponents.

/**
 * Add parent services for given object
 *
 * @param object
 */
private void addServiceComponents(AbstractObject object, long parentElementId) {
    Iterator<Long> it = object.getChildren();
    while (it.hasNext()) {
        long objectId = it.next();
        AbstractObject child = session.findObjectById(objectId);
        if ((child != null) && ((child instanceof Container) || (child instanceof Cluster) || (child instanceof Node) || (child instanceof Condition))) {
            long elementId = mapPage.createElementId();
            mapPage.addElement(new NetworkMapObject(elementId, objectId));
            mapPage.addLink(new NetworkMapLink(NetworkMapLink.NORMAL, parentElementId, elementId));
            addServiceComponents(child, elementId);
        }
    }
}
Also used : Condition(org.netxms.client.objects.Condition) Container(org.netxms.client.objects.Container) AbstractObject(org.netxms.client.objects.AbstractObject) Node(org.netxms.client.objects.Node) Cluster(org.netxms.client.objects.Cluster) NetworkMapObject(org.netxms.client.maps.elements.NetworkMapObject) NetworkMapLink(org.netxms.client.maps.NetworkMapLink)

Example 15 with Node

use of org.netxms.client.objects.Node in project netxms by netxms.

the class VlanMap method processVlanPort.

/**
 * Process single member port of VLAN. Will add connected switch on other site to the map.
 *
 * @param page
 * @param root
 * @param port
 * @throws Exception
 */
private void processVlanPort(NetworkMapPage page, Node root, Port port, long rootElementId) throws Exception {
    Interface iface = (Interface) session.findObjectById(port.getObjectId(), Interface.class);
    if (iface != null) {
        Node peerNode = (Node) session.findObjectById(iface.getPeerNodeId(), Node.class);
        if ((peerNode != null) && ((peerNode.getCapabilities() & Node.NC_IS_BRIDGE) != 0)) {
            try {
                long nodeElementId = collectVlanInfo(page, peerNode);
                if (nodeElementId != -1) {
                    Interface peerIf = (Interface) session.findObjectById(iface.getPeerInterfaceId(), Interface.class);
                    page.addLink(new NetworkMapLink(null, NetworkMapLink.NORMAL, rootElementId, nodeElementId, iface.getObjectName(), (peerIf != null) ? peerIf.getObjectName() : "???", // $NON-NLS-1$ //$NON-NLS-2$
                    0));
                }
            } catch (NXCException e) {
            // Ignore NetXMS errors for remote bridges
            }
        }
    }
}
Also used : Node(org.netxms.client.objects.Node) Interface(org.netxms.client.objects.Interface) NetworkMapLink(org.netxms.client.maps.NetworkMapLink) NXCException(org.netxms.client.NXCException)

Aggregations

Node (org.netxms.client.objects.Node)23 AbstractObject (org.netxms.client.objects.AbstractObject)19 Container (org.netxms.client.objects.Container)7 NXCSession (org.netxms.client.NXCSession)6 Cluster (org.netxms.client.objects.Cluster)6 Condition (org.netxms.client.objects.Condition)6 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)5 Interface (org.netxms.client.objects.Interface)5 NetworkMapLink (org.netxms.client.maps.NetworkMapLink)4 AccessPoint (org.netxms.client.objects.AccessPoint)4 ServiceRoot (org.netxms.client.objects.ServiceRoot)4 Subnet (org.netxms.client.objects.Subnet)4 ArrayList (java.util.ArrayList)3 NetworkMapObject (org.netxms.client.maps.elements.NetworkMapObject)3 AgentPolicy (org.netxms.client.objects.AgentPolicy)3 EntireNetwork (org.netxms.client.objects.EntireNetwork)3 IProgressMonitor (org.eclipse.core.runtime.IProgressMonitor)2 Shell (org.eclipse.swt.widgets.Shell)2 IViewPart (org.eclipse.ui.IViewPart)2 IWorkbenchPage (org.eclipse.ui.IWorkbenchPage)2