List of usage examples for org.apache.commons.configuration HierarchicalConfiguration getString
public String getString(String key)
From source file:org.onosproject.drivers.fujitsu.FujitsuVoltAlarmConsumer.java
/** * Builds alarm source with resource information. * @param idFields a hierarchical configuration * @return formed alarm description//from w w w . j av a 2 s.com */ private String formAlarmSource(List<HierarchicalConfiguration> idFields) { AlertResourceType resourceType = AlertResourceType.UNKNOWN; StringBuilder alarmSrc = new StringBuilder(); String ipAddr = null; int pon = ZERO; int onu = ZERO; for (HierarchicalConfiguration id : idFields) { String value; try { value = id.getString(PONLINK_ID); if (value == null) { resourceType = AlertResourceType.SYSTEM; ipAddr = id.getString(IP_ADDRESS); } else { pon = Integer.parseInt(value); value = id.getString(ONU_ID); if (value == null) { resourceType = AlertResourceType.PONLINK; } else { resourceType = AlertResourceType.ONU; onu = Integer.parseInt(value); } } } catch (NumberFormatException e) { log.error("Non-number resource-id exception {}", e); return null; } } alarmSrc.append("other:"); alarmSrc.append(resourceType.name()).append(SLASH); switch (resourceType) { case PONLINK: alarmSrc.append(pon); break; case ONU: alarmSrc.append(pon).append(HYPHEN).append(onu); break; case SYSTEM: if (ipAddr != null) { alarmSrc.append(ipAddr); } break; default: break; } return alarmSrc.toString(); }
From source file:org.onosproject.drivers.fujitsu.FujitsuVoltAlarmConsumer.java
/** * Converts time and date information from device. * @param cfg a hierarchical configuration * @return converted time from device or system time *///from www . jav a 2s. co m private long getTimeRaised(HierarchicalConfiguration cfg) { String strDate; String strTime; long timeRaised; List<HierarchicalConfiguration> timeFields = cfg.configurationsAt(ALERT_TIME); if (timeFields.isEmpty()) { log.debug("{} does not exsit", ALERT_TIME); } else { for (HierarchicalConfiguration child : timeFields) { strDate = child.getString(DATE); strTime = child.getString(TIME); if ((strDate != null) && (strTime != null)) { try { Date date = dateFormat.parse(strDate + SPACE + strTime); timeRaised = date.getTime(); log.debug("{} {} coverted to {}", strDate, strTime, timeRaised); return timeRaised; } catch (ParseException e) { log.error("Cannot parse exception {} {} {}", strDate, strTime, e); } } else { log.error("{} or {} does not exsit", DATE, TIME); } } } // Use the system's time instead. return System.currentTimeMillis(); }
From source file:org.onosproject.drivers.fujitsu.FujitsuVoltControllerConfig.java
/** * Parses XML string to get controller information. * * @param cfg a hierarchical configuration * @return a list of controllers/*w w w . j av a2s.com*/ */ private List<ControllerInfo> parseStreamVoltControllers(HierarchicalConfiguration cfg) { List<ControllerInfo> controllers = new ArrayList<>(); List<HierarchicalConfiguration> fields = cfg.configurationsAt(VOLT_DATACONFIG); for (HierarchicalConfiguration sub : fields) { List<HierarchicalConfiguration> childFields = sub.configurationsAt(CONTROLLER_INFO); for (HierarchicalConfiguration child : childFields) { Annotations annotations = DefaultAnnotations.builder().set(OFCONFIG_ID, sub.getString(OFCONFIG_ID)) .build(); ControllerInfo controller = new ControllerInfo(IpAddress.valueOf(child.getString(IP_ADDRESS)), Integer.parseInt(child.getString(PORT)), child.getString(PROTOCOL), annotations); log.debug("VOLT: OFCONTROLLER: PROTOCOL={}, IP={}, PORT={}, ID={} ", controller.type(), controller.ip(), controller.port(), controller.annotations().value(OFCONFIG_ID)); controllers.add(controller); } } return controllers; }
From source file:org.onosproject.drivers.juniper.JuniperUtils.java
/** * Parses device configuration and returns the device description. * * @param deviceId the id of the device * @param sysInfoCfg system configuration * @param chassisText chassis string//from w w w . j a v a 2s .c o m * @return device description */ public static DeviceDescription parseJuniperDescription(DeviceId deviceId, HierarchicalConfiguration sysInfoCfg, String chassisText) { HierarchicalConfiguration info = sysInfoCfg.configurationAt(SYS_INFO); String hw = info.getString(HW_MODEL) == null ? UNKNOWN : info.getString(HW_MODEL); String sw = UNKNOWN; if (info.getString(OS_NAME) != null || info.getString(OS_VER) != null) { sw = info.getString(OS_NAME) + " " + info.getString(OS_VER); } String serial = info.getString(SER_NUM) == null ? UNKNOWN : info.getString(SER_NUM); Matcher matcher = ADD_PATTERN.matcher(chassisText); if (matcher.lookingAt()) { String chassis = matcher.group(1); MacAddress chassisMac = MacAddress.valueOf(chassis); return new DefaultDeviceDescription(deviceId.uri(), ROUTER, JUNIPER, hw, sw, serial, new ChassisId(chassisMac.toLong()), DefaultAnnotations.EMPTY); } return new DefaultDeviceDescription(deviceId.uri(), ROUTER, JUNIPER, hw, sw, serial, null, DefaultAnnotations.EMPTY); }
From source file:org.onosproject.drivers.juniper.JuniperUtils.java
/** * Parses device ports configuration and returns a list of * port description.//from w w w. ja va2 s. c o m * * @param cfg interface configuration * @return list of interface descriptions of the device */ public static List<PortDescription> parseJuniperPorts(HierarchicalConfiguration cfg) { //This methods ignores some internal ports List<PortDescription> portDescriptions = Lists.newArrayList(); List<HierarchicalConfiguration> subtrees = cfg.configurationsAt(IF_INFO); for (HierarchicalConfiguration interfInfo : subtrees) { List<HierarchicalConfiguration> interfaceTree = interfInfo.configurationsAt(IF_PHY); for (HierarchicalConfiguration interf : interfaceTree) { if (interf != null) { if (interf.getString(IF_TYPE) != null && interf.getString(SPEED) != null) { if (interf.getString(IF_TYPE).contains(ETH) && interf.getString(SPEED).contains(MBPS)) { portDescriptions.add(parseDefaultPort(interf)); } } else if (interf.getString(IF_LO_ENCAP) != null && !interf.getString(NAME).contains("pfe") && interf.getString(IF_LO_ENCAP).contains("ENET2")) { portDescriptions.add(parseLogicalPort(interf)); } else if (interf.getString(NAME).contains("lo")) { portDescriptions.add(parseLoopback(interf)); } } } } return portDescriptions; }
From source file:org.onosproject.drivers.juniper.JuniperUtils.java
private static PortDescription parseLoopback(HierarchicalConfiguration cfg) { String name = cfg.getString(IF_LO_NAME).trim(); PortNumber portNumber = portNumber(name.replace("lo0.", "")); Builder annotationsBuilder = DefaultAnnotations.builder().set(AnnotationKeys.PORT_NAME, name); String ip = cfg.getString(IF_LO_ADD); if (ip != null) { annotationsBuilder.set("ip", ip); }//from www . j a v a 2 s .com return new DefaultPortDescription(portNumber, true, COPPER, DEFAULT_PORT_SPEED, annotationsBuilder.build()); }
From source file:org.onosproject.drivers.juniper.JuniperUtils.java
private static DefaultPortDescription parseDefaultPort(HierarchicalConfiguration cfg) { PortNumber portNumber = portNumber(cfg.getString(LO_INDEX)); boolean enabled = cfg.getString(STATUS).equals("up"); int speed = parseInt(cfg.getString(SPEED).replaceAll(MBPS, "")); Builder annotationsBuilder = DefaultAnnotations.builder().set(AnnotationKeys.PORT_NAME, cfg.getString(NAME).trim()); setIpIfPresent(cfg, annotationsBuilder); return new DefaultPortDescription(portNumber, enabled, COPPER, speed, annotationsBuilder.build()); }
From source file:org.onosproject.drivers.juniper.JuniperUtils.java
private static DefaultPortDescription parseLogicalPort(HierarchicalConfiguration cfg) { String name = cfg.getString(NAME).trim(); String index = cfg.getString(SNMP_INDEX).trim(); Builder annotationsBuilder = DefaultAnnotations.builder().set(AnnotationKeys.PORT_NAME, name).set("index", index);/*from ww w. jav a 2s . c om*/ setIpIfPresent(cfg, annotationsBuilder); PortNumber portNumber = portNumberFromName(cfg.getString(IF_LO_INDEX), name); boolean enabled = false; if (cfg.getString(IF_LO_STATUS) != null) { enabled = true; } //FIXME: port speed should be exposed return new DefaultPortDescription(portNumber, enabled, COPPER, DEFAULT_PORT_SPEED, annotationsBuilder.build()); }
From source file:org.onosproject.drivers.juniper.JuniperUtils.java
private static void setIpIfPresent(HierarchicalConfiguration cfg, Builder annotationsBuilder) { String ip = cfg.getString(IF_LO_ADD); if (ip != null) { annotationsBuilder.set("ip", ip); }/*from w w w .ja v a 2s. c o m*/ }
From source file:org.onosproject.drivers.juniper.JuniperUtils.java
/** * Parses neighbours discovery information and returns a list of * link abstractions.//from ww w . j a va 2 s . c o m * * @param info interface configuration * @return set of link abstractions */ public static Set<LinkAbstraction> parseJuniperLldp(HierarchicalConfiguration info) { Set<LinkAbstraction> neighbour = new HashSet<>(); List<HierarchicalConfiguration> subtrees = info.configurationsAt(LLDP_NBR_INFO); for (HierarchicalConfiguration neighborsInfo : subtrees) { List<HierarchicalConfiguration> neighbors = neighborsInfo.configurationsAt(LLDP_NBR_INFO); for (HierarchicalConfiguration neighbor : neighbors) { String localPortName = neighbor.getString(LLDP_LO_PORT); MacAddress mac = MacAddress.valueOf(neighbor.getString(LLDP_REM_CHASS)); int remotePortIndex = neighbor.getInt(LLDP_REM_PORT); LinkAbstraction link = new LinkAbstraction(localPortName, mac.toLong(), remotePortIndex); neighbour.add(link); } } return neighbour; }