use of org.netxms.client.objects.Node in project netxms by netxms.
the class SelectInstallTargetDialog method okPressed.
/* (non-Javadoc)
* @see org.eclipse.jface.dialogs.Dialog#okPressed()
*/
@Override
protected void okPressed() {
installMode = radioInstallOnCurrent.getSelection() ? INSTALL_ON_CURRENT : INSTALL_ON_SELECTED;
final NXCSession session = (NXCSession) ConsoleSharedData.getSession();
List<AbstractObject> objects = session.findMultipleObjects(objectTree.getCheckedObjects(), false);
Iterator<AbstractObject> it = objects.iterator();
while (it.hasNext()) {
AbstractObject o = it.next();
if (!(o instanceof Node))
it.remove();
}
selectedObjects = objects.toArray(new AbstractObject[0]);
super.okPressed();
}
use of org.netxms.client.objects.Node in project netxms by netxms.
the class FindConnectionPoint method run.
/* (non-Javadoc)
* @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
*/
@Override
public void run(IAction action) {
if ((objects == null) || (objects.isEmpty()))
return;
final NXCSession session = (NXCSession) ConsoleSharedData.getSession();
new ConsoleJob(Messages.get().FindConnectionPoint_JobTitle, wbPart, Activator.PLUGIN_ID, null) {
@Override
protected void runInternal(IProgressMonitor monitor) throws Exception {
final ConnectionPoint[] cps = new ConnectionPoint[objects.size()];
for (int i = 0; i < objects.size(); i++) {
AbstractObject object = objects.get(i);
cps[i] = session.findConnectionPoint(object.getObjectId());
if (cps[i] == null) {
if (object instanceof Node)
cps[i] = new ConnectionPoint(object.getObjectId(), 0, false);
else
cps[i] = new ConnectionPoint(object.getParentIdList()[0], object.getObjectId(), false);
}
}
runInUIThread(new Runnable() {
@Override
public void run() {
if (cps.length == 1)
HostSearchResults.showConnection(cps[0]);
else
HostSearchResults.showConnection(cps);
}
});
}
@Override
protected String getErrorMessage() {
return Messages.get().FindConnectionPoint_JobError;
}
}.start();
}
use of org.netxms.client.objects.Node in project netxms by netxms.
the class SendEventTest method testSendEvent.
public void testSendEvent() throws Exception {
final NXCSession session = connect();
session.sendEvent(1, new String[0]);
session.sendEvent("SYS_NODE_ADDED", new String[0]);
session.syncObjects();
for (AbstractObject o : session.getAllObjects()) {
if (o instanceof Node) {
session.sendEvent(0, "SYS_SCRIPT_ERROR", o.getObjectId(), new String[] { "test1", "test2", "0" }, "TAG");
break;
}
}
session.disconnect();
}
use of org.netxms.client.objects.Node in project netxms by netxms.
the class NXCSession method createObjectFromMessage.
/**
* Create object from message
*
* @param msg Source NXCP message
* @return NetXMS object
*/
private AbstractObject createObjectFromMessage(NXCPMessage msg) {
final int objectClass = msg.getFieldAsInt32(NXCPCodes.VID_OBJECT_CLASS);
AbstractObject object = createCustomObjectFromMessage(objectClass, msg);
if (object != null)
return object;
switch(objectClass) {
case AbstractObject.OBJECT_ACCESSPOINT:
object = new AccessPoint(msg, this);
break;
case AbstractObject.OBJECT_AGENTPOLICY:
object = new AgentPolicy(msg, this);
break;
case AbstractObject.OBJECT_AGENTPOLICY_CONFIG:
object = new AgentPolicyConfig(msg, this);
break;
case AbstractObject.OBJECT_AGENTPOLICY_LOGPARSER:
object = new AgentPolicyLogParser(msg, this);
break;
case AbstractObject.OBJECT_BUSINESSSERVICE:
object = new BusinessService(msg, this);
break;
case AbstractObject.OBJECT_BUSINESSSERVICEROOT:
object = new BusinessServiceRoot(msg, this);
break;
case AbstractObject.OBJECT_CHASSIS:
object = new Chassis(msg, this);
break;
case AbstractObject.OBJECT_CLUSTER:
object = new Cluster(msg, this);
break;
case AbstractObject.OBJECT_CONDITION:
object = new Condition(msg, this);
break;
case AbstractObject.OBJECT_CONTAINER:
object = new Container(msg, this);
break;
case AbstractObject.OBJECT_DASHBOARDGROUP:
object = new DashboardGroup(msg, this);
break;
case AbstractObject.OBJECT_DASHBOARD:
object = new Dashboard(msg, this);
break;
case AbstractObject.OBJECT_DASHBOARDROOT:
object = new DashboardRoot(msg, this);
break;
case AbstractObject.OBJECT_INTERFACE:
object = new Interface(msg, this);
break;
case AbstractObject.OBJECT_MOBILEDEVICE:
object = new MobileDevice(msg, this);
break;
case AbstractObject.OBJECT_NETWORK:
object = new EntireNetwork(msg, this);
break;
case AbstractObject.OBJECT_NETWORKMAP:
object = new NetworkMap(msg, this);
break;
case AbstractObject.OBJECT_NETWORKMAPGROUP:
object = new NetworkMapGroup(msg, this);
break;
case AbstractObject.OBJECT_NETWORKMAPROOT:
object = new NetworkMapRoot(msg, this);
break;
case AbstractObject.OBJECT_NETWORKSERVICE:
object = new NetworkService(msg, this);
break;
case AbstractObject.OBJECT_NODE:
object = new Node(msg, this);
break;
case AbstractObject.OBJECT_NODELINK:
object = new NodeLink(msg, this);
break;
case AbstractObject.OBJECT_POLICYGROUP:
object = new PolicyGroup(msg, this);
break;
case AbstractObject.OBJECT_POLICYROOT:
object = new PolicyRoot(msg, this);
break;
case AbstractObject.OBJECT_RACK:
object = new Rack(msg, this);
break;
case AbstractObject.OBJECT_SENSOR:
object = new Sensor(msg, this);
break;
case AbstractObject.OBJECT_SERVICEROOT:
object = new ServiceRoot(msg, this);
break;
case AbstractObject.OBJECT_SLMCHECK:
object = new ServiceCheck(msg, this);
break;
case AbstractObject.OBJECT_SUBNET:
object = new Subnet(msg, this);
break;
case AbstractObject.OBJECT_TEMPLATE:
object = new Template(msg, this);
break;
case AbstractObject.OBJECT_TEMPLATEGROUP:
object = new TemplateGroup(msg, this);
break;
case AbstractObject.OBJECT_TEMPLATEROOT:
object = new TemplateRoot(msg, this);
break;
case AbstractObject.OBJECT_VPNCONNECTOR:
object = new VPNConnector(msg, this);
break;
case AbstractObject.OBJECT_ZONE:
object = new Zone(msg, this);
break;
default:
object = new GenericObject(msg, this);
break;
}
return object;
}
use of org.netxms.client.objects.Node in project netxms by netxms.
the class NodeBrowser method onContextItemSelected.
/* (non-Javadoc)
* @see android.app.Activity#onContextItemSelected(android.view.MenuItem)
*/
@SuppressWarnings("deprecation")
@Override
public boolean onContextItemSelected(MenuItem item) {
if (selectedObject == null)
return super.onContextItemSelected(item);
switch(item.getItemId()) {
case R.id.find_switch_port:
Intent fspIntent = new Intent(this, ConnectionPointBrowser.class);
fspIntent.putExtra("nodeId", (int) selectedObject.getObjectId());
startActivity(fspIntent);
break;
case R.id.view_alarms:
new SyncMissingChildsTask().execute(new Integer[] { (int) selectedObject.getObjectId() });
break;
case R.id.unmanage:
service.setObjectMgmtState(selectedObject.getObjectId(), false);
refreshList();
break;
case R.id.manage:
service.setObjectMgmtState(selectedObject.getObjectId(), true);
refreshList();
break;
case R.id.poll_status:
Intent psIntent = new Intent(this, NodePollerActivity.class);
psIntent.putExtra("nodeId", (int) selectedObject.getObjectId());
psIntent.putExtra("pollType", NodePollType.STATUS);
startActivity(psIntent);
break;
case R.id.poll_configuration:
Intent pcIntent = new Intent(this, NodePollerActivity.class);
pcIntent.putExtra("nodeId", (int) selectedObject.getObjectId());
pcIntent.putExtra("pollType", NodePollType.CONFIGURATION_NORMAL);
startActivity(pcIntent);
break;
case R.id.poll_topology:
Intent ptIntent = new Intent(this, NodePollerActivity.class);
ptIntent.putExtra("nodeId", (int) selectedObject.getObjectId());
ptIntent.putExtra("pollType", NodePollType.TOPOLOGY);
startActivity(ptIntent);
break;
case R.id.poll_interfaces:
Intent piIntent = new Intent(this, NodePollerActivity.class);
piIntent.putExtra("nodeId", (int) selectedObject.getObjectId());
piIntent.putExtra("pollType", NodePollType.INTERFACES);
startActivity(piIntent);
break;
case R.id.navigate_to:
GeoLocation gl = selectedObject.getGeolocation();
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("google.navigation:q=" + gl.getLatitude() + "," + gl.getLongitude()));
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
try {
startActivity(intent);
} catch (ActivityNotFoundException e) {
Toast.makeText(getApplicationContext(), "Navigation unavailable", Toast.LENGTH_LONG);
}
break;
default:
// if we didn't match static menu, check if it was some of tools
List<ObjectTool> tools = service.getTools();
if (tools != null) {
for (final ObjectTool tool : tools) {
if ((int) tool.getId() == item.getItemId()) {
if ((tool.getFlags() & ObjectTool.ASK_CONFIRMATION) != 0) {
String message = tool.getConfirmationText().replaceAll("%n", selectedObject.getObjectName()).replaceAll("%a", ((Node) selectedObject).getPrimaryIP().getHostAddress());
new AlertDialog.Builder(this).setIcon(android.R.drawable.ic_dialog_alert).setTitle(R.string.confirm_tool_execution).setMessage(message).setCancelable(true).setPositiveButton(R.string.yes, new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
service.executeObjectTool(selectedObject.getObjectId(), tool);
}
}).setNegativeButton(R.string.no, null).show();
break;
}
service.executeObjectTool(selectedObject.getObjectId(), tool);
break;
}
}
}
break;
}
return super.onContextItemSelected(item);
}
Aggregations