use of org.netxms.client.objects.Interface 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.Interface in project netxms by netxms.
the class InterfacesFragment method onLoadFinished.
/* (non-Javadoc)
* @see android.support.v4.app.LoaderManager.LoaderCallbacks#onLoadFinished(android.support.v4.content.Loader, java.lang.Object)
*/
@Override
public void onLoadFinished(Loader<Set<AbstractObject>> arg0, Set<AbstractObject> arg1) {
setListShown(true, true);
if (adapter != null) {
List<Interface> interfaces = null;
if (arg1 != null) {
interfaces = new ArrayList<Interface>();
for (AbstractObject go : arg1) interfaces.add((Interface) go);
}
adapter.setValues(interfaces);
adapter.notifyDataSetChanged();
}
}
use of org.netxms.client.objects.Interface in project netxms by netxms.
the class InterfacesAdapter method setValues.
/**
* Set graphs
*
* @param graphs
*/
public void setValues(List<Interface> interfaces) {
groups.clear();
children.clear();
if (interfaces != null) {
Collections.sort(interfaces, new Comparator<Interface>() {
@Override
public int compare(Interface object1, Interface object2) {
return object1.getObjectName().compareTo(object2.getObjectName());
}
});
for (int i = 0; i < interfaces.size(); i++) {
groups.add(interfaces.get(i).getObjectName());
children.add(new ArrayList<Interface>());
children.get(i).add(interfaces.get(i));
}
}
}
use of org.netxms.client.objects.Interface in project netxms by netxms.
the class ObjectFinder method doSearch.
/**
* Do object search
*
* @param searchString search string
* @param classFilter
* @param zoneFilter
* @param addrEnd
* @param addrStart
*/
private void doSearch(final String searchString, final int mode, final List<Integer> classFilter, final List<Long> zoneFilter, final InetAddress addrStart, final InetAddress addrEnd) {
final NXCSession session = ConsoleSharedData.getSession();
new ConsoleJob("Find objects", this, Activator.PLUGIN_ID, null) {
@Override
protected void runInternal(IProgressMonitor monitor) throws Exception {
final Pattern regexp = (mode == SEARCH_MODE_REGEXP) ? Pattern.compile(searchString, Pattern.CASE_INSENSITIVE | Pattern.DOTALL | Pattern.UNICODE_CASE) : null;
final List<AbstractObject> objects = session.filterObjects(new ObjectFilter() {
@Override
public boolean filter(AbstractObject object) {
if (session.isZoningEnabled() && session.getAllZones().size() != zoneFilter.size()) {
if (object instanceof ZoneMember) {
ZoneMember node = (ZoneMember) object;
if (!zoneFilter.contains(node.getZoneId()))
return false;
}
if (object instanceof Sensor) {
AbstractNode proxy = session.findObjectById(((Sensor) object).getProxyId(), AbstractNode.class);
if (proxy != null && zoneFilter.contains(proxy.getZoneId()))
return false;
} else if (object instanceof Interface) {
AbstractNode parent = ((Interface) object).getParentNode();
if (parent != null && !zoneFilter.contains(parent.getZoneId()))
return false;
} else if (object instanceof NetworkService) {
AbstractNode parent = ((NetworkService) object).getParentNode();
if (parent != null && !zoneFilter.contains(parent.getZoneId()))
return false;
} else if (object instanceof VPNConnector) {
AbstractNode parent = ((VPNConnector) object).getParentNode();
if (parent != null && !zoneFilter.contains(parent.getZoneId()))
return false;
} else if (object instanceof AccessPoint) {
AbstractNode parent = ((AccessPoint) object).getParentNode();
if (parent != null && !zoneFilter.contains(parent.getZoneId()))
return false;
} else if (object instanceof GenericObject && !zoneFilter.isEmpty()) {
AbstractObject[] children = ((GenericObject) object).getChildsAsArray();
boolean match = false;
for (AbstractObject o : children) {
if (o instanceof ZoneMember && zoneFilter.contains(((ZoneMember) o).getZoneId()))
match = true;
}
if (!match)
return false;
}
}
if (!classFilter.contains(object.getObjectClass()))
return false;
if ((addrStart != null) && (addrEnd != null)) {
if (!checkAddrRange(addrStart, addrEnd, object))
return false;
}
if (searchString.isEmpty())
return true;
for (String s : object.getStrings()) {
switch(mode) {
case SEARCH_MODE_NORMAL:
if (s.toLowerCase().contains(searchString))
return true;
break;
case SEARCH_MODE_PATTERN:
if (Glob.match(searchString, s.toLowerCase()))
return true;
break;
case SEARCH_MODE_REGEXP:
if (regexp.matcher(s).find())
return true;
break;
}
}
return false;
}
});
runInUIThread(new Runnable() {
@Override
public void run() {
results.setInput(objects);
}
});
}
@Override
protected String getErrorMessage() {
return "Object search failure";
}
}.start();
}
use of org.netxms.client.objects.Interface in project netxms by netxms.
the class ObjectDecorator method decorate.
/* (non-Javadoc)
* @see org.eclipse.jface.viewers.ILightweightLabelDecorator#decorate(java.lang.Object, org.eclipse.jface.viewers.IDecoration)
*/
@Override
public void decorate(Object element, IDecoration decoration) {
ObjectStatus status = ((AbstractObject) element).getStatus();
decoration.addOverlay(statusImages[status.getValue()], IDecoration.BOTTOM_RIGHT);
if (((AbstractObject) element).isInMaintenanceMode()) {
decoration.addOverlay(maintModeImage, IDecoration.TOP_RIGHT);
decoration.addSuffix(Messages.get().ObjectDecorator_MaintenanceSuffix);
decoration.setForegroundColor(maintColor);
}
if (element instanceof Interface) {
if ((((Interface) element).getOperState() == Interface.OPER_STATE_DOWN) && (((Interface) element).getAdminState() == Interface.ADMIN_STATE_UP) && (((Interface) element).getExpectedState() == Interface.EXPECTED_STATE_IGNORE))
decoration.addOverlay(statusImages[ObjectStatus.CRITICAL.getValue()], IDecoration.TOP_LEFT);
}
}
Aggregations