Skip to content

Commit

Permalink
Merge branch 'space/14.1-enlinkd' of github.com:OpenNMS/opennms into …
Browse files Browse the repository at this point in the history
…space/14.1-enlinkd
  • Loading branch information
thedesloge committed May 12, 2014
2 parents 7d655b8 + d1dd3d2 commit bb875b0
Show file tree
Hide file tree
Showing 4 changed files with 271 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@
import java.net.UnknownHostException;
import java.util.Arrays;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.opennms.core.network.IPAddress;
import org.slf4j.Logger;
Expand All @@ -50,6 +52,10 @@ public abstract class InetAddressUtils {

private static final Logger LOG = LoggerFactory.getLogger(InetAddressUtils.class);

public static final String INVALID_BRIDGE_ADDRESS = "000000000000";
public static final String INVALID_STP_BRIDGE_ID = "0000000000000000";
public static final String INVALID_STP_BRIDGE_DESIGNATED_PORT = "0000";

private static final ByteArrayComparator s_BYTE_ARRAY_COMPARATOR = new ByteArrayComparator();
public static final InetAddress UNPINGABLE_ADDRESS;
public static final InetAddress UNPINGABLE_ADDRESS_IPV6;
Expand Down Expand Up @@ -477,4 +483,38 @@ public static String macAddressBytesToString(byte[] macAddress) {
public static String normalizeMacAddress(String macAddress) {
return macAddressBytesToString(macAddressStringToBytes(macAddress));
}

public static boolean isValidStpDesignatedPort(String bridgeDesignatedPort) {
if (bridgeDesignatedPort == null || bridgeDesignatedPort.equals(INVALID_STP_BRIDGE_DESIGNATED_PORT))
return false;
Pattern pattern = Pattern.compile("([0-9a-f]{4})");
Matcher matcher = pattern.matcher(bridgeDesignatedPort);
return matcher.matches();
}

public static int getBridgeDesignatedPortNumber(String stpPortDesignatedPort) {
return 8191 & Integer.parseInt(stpPortDesignatedPort,
16);
}

public static boolean isValidBridgeAddress(String bridgeAddress) {
if (bridgeAddress == null || bridgeAddress.equals(INVALID_BRIDGE_ADDRESS))
return false;
Pattern pattern = Pattern.compile("([0-9a-f]{12})");
Matcher matcher = pattern.matcher(bridgeAddress);
return matcher.matches();
}

public static boolean isValidStpBridgeId(String bridgeId) {
if (bridgeId == null || bridgeId.equals(INVALID_STP_BRIDGE_ID))
return false;
Pattern pattern = Pattern.compile("([0-9a-f]{16})");
Matcher matcher = pattern.matcher(bridgeId);
return matcher.matches();
}

public static String getBridgeAddressFromStpBridgeId(String bridgeId) {
return bridgeId.substring(4, 16);
}

}
75 changes: 75 additions & 0 deletions opennms-base-assembly/src/main/filtered/etc/create.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2252,6 +2252,10 @@ drop table ospfElement cascade;
drop table ospfLink cascade;
drop table isisElement cascade;
drop table isisLink cascade;
drop table bridgeElement cascade;
drop table bridgeMacLink cascade;
drop table bridgeBridgeLink cascade;
drop table bridgeStpLink cascade;

create table lldpElement (
id integer default nextval('opennmsnxtid') not null,
Expand Down Expand Up @@ -2346,6 +2350,77 @@ create table isisLink (
constraint fk_nodeIDisislink foreign key (nodeid) references node ON DELETE CASCADE
);

create table bridgeElement (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
baseBridgeAddress varchar(12) not null,
baseNumPorts integer not null,
basetype integer not null,
vlan integer,
vlanname varchar(64),
stpProtocolSpecification integer,
stpPriority integer,
stpdesignatedroot varchar(16),
stprootcost integer,
stprootport integer,
bridgeNodeCreateTime timestamp not null,
bridgeNodeLastPollTime timestamp not null,
constraint pk_bridgeelement_id primary key (id),
constraint fk_nodeIDbridgeelement foreign key (nodeid) references node on delete cascade
);

create table bridgeMacLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
bridgePort integer not null,
bridgePortIfIndex integer,
bridgePortIfName varchar(32),
vlan integer,
macAdreess varchar(12),
bridgeMacLinkCreateTime timestamp not null,
bridgeMacLinkLastPollTime timestamp not null,
constraint pk_bridgemaclink_id primary key (id),
constraint fk_nodeIDbridgemaclink foreign key (nodeid) references node on delete cascade
);

create table bridgeBridgeLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
bridgePort integer not null,
bridgePortIfIndex integer,
bridgePortIfName varchar(32),
vlan integer,
designatedNodeid integer,
designatedPort integer not null,
designatedPortIfIndex integer,
designatedPortIfName varchar(32),
designatedVlan integer,
bridgeBridgeLinkCreateTime timestamp not null,
bridgeBridgeLinkLastPollTime timestamp not null,
constraint pk_bridgebridgelink_id primary key (id),
constraint fk_nodeIDbridgebridgelink foreign key (nodeid) references node on delete cascade,
constraint fk_desnodeIDbridgemaclink foreign key (designatednodeid) references node (nodeid)
);

create table bridgeStpLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
stpPort integer not null,
stpPortPriority integer not null,
stpPortState integer not null,
stpPortEnable integer not null,
stpPortIfIndex integer,
stpPortIfName varchar(32),
vlan integer,
designatedRoot varchar(16) not null,
designatedCost integer not null,
designatedBridge varchar(16) not null,
designatedPort integer not null,
bridgeStpLinkCreateTime timestamp not null,
bridgeStpLinkLastPollTime timestamp not null,
constraint pk_bridgestplink_id primary key (id),
constraint fk_nodeIDbridgestplink foreign key (nodeid) references node on delete cascade
);
--# End enlinkd table

--# Begin Quartz persistence tables
Expand Down
81 changes: 78 additions & 3 deletions opennms-dao/src/test/resources/create.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2252,6 +2252,10 @@ drop table ospfElement cascade;
drop table ospfLink cascade;
drop table isisElement cascade;
drop table isisLink cascade;
drop table bridgeElement cascade;
drop table bridgeMacLink cascade;
drop table bridgeBridgeLink cascade;
drop table bridgeStpLink cascade;

create table lldpElement (
id integer default nextval('opennmsnxtid') not null,
Expand Down Expand Up @@ -2320,7 +2324,7 @@ create table ospfLink (
create table isisElement (
id integer default nextval('opennmsnxtid') not null,
nodeid integer not null,
isisSysID varchar(255) not null,
isisSysID varchar(32) not null,
isisSysAdminState integer not null,
isisNodeCreateTime timestamp not null,
isisNodeLastPollTime timestamp not null,
Expand All @@ -2336,16 +2340,87 @@ create table isisLink (
isisCircIfIndex integer,
isisCircAdminState integer,
isisISAdjState integer not null,
isisISAdjNeighSNPAAddress varchar(255) not null,
isisISAdjNeighSNPAAddress varchar(80) not null,
isisISAdjNeighSysType integer not null,
isisISAdjNeighSysID varchar(255) not null,
isisISAdjNeighSysID varchar(32) not null,
isisISAdjNbrExtendedCircID integer,
isisLinkCreateTime timestamp not null,
isisLinkLastPollTime timestamp not null,
constraint pk_isislink_id primary key (id),
constraint fk_nodeIDisislink foreign key (nodeid) references node ON DELETE CASCADE
);

create table bridgeElement (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
baseBridgeAddress varchar(12) not null,
baseNumPorts integer not null,
basetype integer not null,
vlan integer,
vlanname varchar(64),
stpProtocolSpecification integer,
stpPriority integer,
stpdesignatedroot varchar(16),
stprootcost integer,
stprootport integer,
bridgeNodeCreateTime timestamp not null,
bridgeNodeLastPollTime timestamp not null,
constraint pk_bridgeelement_id primary key (id),
constraint fk_nodeIDbridgeelement foreign key (nodeid) references node on delete cascade
);

create table bridgeMacLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
bridgePort integer not null,
bridgePortIfIndex integer,
bridgePortIfName varchar(32),
vlan integer,
macAdreess varchar(12),
bridgeMacLinkCreateTime timestamp not null,
bridgeMacLinkLastPollTime timestamp not null,
constraint pk_bridgemaclink_id primary key (id),
constraint fk_nodeIDbridgemaclink foreign key (nodeid) references node on delete cascade
);

create table bridgeBridgeLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
bridgePort integer not null,
bridgePortIfIndex integer,
bridgePortIfName varchar(32),
vlan integer,
designatedNodeid integer,
designatedPort integer not null,
designatedPortIfIndex integer,
designatedPortIfName varchar(32),
designatedVlan integer,
bridgeBridgeLinkCreateTime timestamp not null,
bridgeBridgeLinkLastPollTime timestamp not null,
constraint pk_bridgebridgelink_id primary key (id),
constraint fk_nodeIDbridgebridgelink foreign key (nodeid) references node on delete cascade,
constraint fk_desnodeIDbridgemaclink foreign key (designatednodeid) references node (nodeid)
);

create table bridgeStpLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
stpPort integer not null,
stpPortPriority integer not null,
stpPortState integer not null,
stpPortEnable integer not null,
stpPortIfIndex integer,
stpPortIfName varchar(32),
vlan integer,
designatedRoot varchar(16) not null,
designatedCost integer not null,
designatedBridge varchar(16) not null,
designatedPort integer not null,
bridgeStpLinkCreateTime timestamp not null,
bridgeStpLinkLastPollTime timestamp not null,
constraint pk_bridgestplink_id primary key (id),
constraint fk_nodeIDbridgestplink foreign key (nodeid) references node on delete cascade
);
--# End enlinkd table

--# Begin Quartz persistence tables
Expand Down
81 changes: 78 additions & 3 deletions opennms-install/src/test/resources/etc/create.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2252,6 +2252,10 @@ drop table ospfElement cascade;
drop table ospfLink cascade;
drop table isisElement cascade;
drop table isisLink cascade;
drop table bridgeElement cascade;
drop table bridgeMacLink cascade;
drop table bridgeBridgeLink cascade;
drop table bridgeStpLink cascade;

create table lldpElement (
id integer default nextval('opennmsnxtid') not null,
Expand Down Expand Up @@ -2320,7 +2324,7 @@ create table ospfLink (
create table isisElement (
id integer default nextval('opennmsnxtid') not null,
nodeid integer not null,
isisSysID varchar(255) not null,
isisSysID varchar(32) not null,
isisSysAdminState integer not null,
isisNodeCreateTime timestamp not null,
isisNodeLastPollTime timestamp not null,
Expand All @@ -2336,16 +2340,87 @@ create table isisLink (
isisCircIfIndex integer,
isisCircAdminState integer,
isisISAdjState integer not null,
isisISAdjNeighSNPAAddress varchar(255) not null,
isisISAdjNeighSNPAAddress varchar(80) not null,
isisISAdjNeighSysType integer not null,
isisISAdjNeighSysID varchar(255) not null,
isisISAdjNeighSysID varchar(32) not null,
isisISAdjNbrExtendedCircID integer,
isisLinkCreateTime timestamp not null,
isisLinkLastPollTime timestamp not null,
constraint pk_isislink_id primary key (id),
constraint fk_nodeIDisislink foreign key (nodeid) references node ON DELETE CASCADE
);

create table bridgeElement (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
baseBridgeAddress varchar(12) not null,
baseNumPorts integer not null,
basetype integer not null,
vlan integer,
vlanname varchar(64),
stpProtocolSpecification integer,
stpPriority integer,
stpdesignatedroot varchar(16),
stprootcost integer,
stprootport integer,
bridgeNodeCreateTime timestamp not null,
bridgeNodeLastPollTime timestamp not null,
constraint pk_bridgeelement_id primary key (id),
constraint fk_nodeIDbridgeelement foreign key (nodeid) references node on delete cascade
);

create table bridgeMacLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
bridgePort integer not null,
bridgePortIfIndex integer,
bridgePortIfName varchar(32),
vlan integer,
macAdreess varchar(12),
bridgeMacLinkCreateTime timestamp not null,
bridgeMacLinkLastPollTime timestamp not null,
constraint pk_bridgemaclink_id primary key (id),
constraint fk_nodeIDbridgemaclink foreign key (nodeid) references node on delete cascade
);

create table bridgeBridgeLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
bridgePort integer not null,
bridgePortIfIndex integer,
bridgePortIfName varchar(32),
vlan integer,
designatedNodeid integer,
designatedPort integer not null,
designatedPortIfIndex integer,
designatedPortIfName varchar(32),
designatedVlan integer,
bridgeBridgeLinkCreateTime timestamp not null,
bridgeBridgeLinkLastPollTime timestamp not null,
constraint pk_bridgebridgelink_id primary key (id),
constraint fk_nodeIDbridgebridgelink foreign key (nodeid) references node on delete cascade,
constraint fk_desnodeIDbridgemaclink foreign key (designatednodeid) references node (nodeid)
);

create table bridgeStpLink (
id integer default nextval('opennmsNxtId') not null,
nodeid integer not null,
stpPort integer not null,
stpPortPriority integer not null,
stpPortState integer not null,
stpPortEnable integer not null,
stpPortIfIndex integer,
stpPortIfName varchar(32),
vlan integer,
designatedRoot varchar(16) not null,
designatedCost integer not null,
designatedBridge varchar(16) not null,
designatedPort integer not null,
bridgeStpLinkCreateTime timestamp not null,
bridgeStpLinkLastPollTime timestamp not null,
constraint pk_bridgestplink_id primary key (id),
constraint fk_nodeIDbridgestplink foreign key (nodeid) references node on delete cascade
);
--# End enlinkd table

--# Begin Quartz persistence tables
Expand Down

0 comments on commit bb875b0

Please sign in to comment.