From e1c702fef2fa7c0e21b4c6d850048c898e4ccfc8 Mon Sep 17 00:00:00 2001 From: Michal Cmarada Date: Wed, 15 May 2019 09:44:11 +0200 Subject: Add dump for interface names from stats api Change-Id: I051ce7500bbbef1088bbdd6f1cc68eb605f3ec61 Signed-off-by: Michal Cmarada --- .../io/fd/jvpp/stats/dto/InterfaceName.java | 55 +++++++++++++++++ .../fd/jvpp/stats/dto/InterfaceNamesDetails.java | 71 ++++++++++++++++++++++ .../stats/dto/InterfaceNamesDetailsReplyDump.java | 54 ++++++++++++++++ .../io/fd/jvpp/stats/dto/InterfaceNamesDump.java | 51 ++++++++++++++++ 4 files changed, 231 insertions(+) create mode 100644 java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceName.java create mode 100644 java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetails.java create mode 100644 java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetailsReplyDump.java create mode 100644 java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDump.java (limited to 'java/jvpp-stats/io/fd/jvpp/stats/dto') diff --git a/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceName.java b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceName.java new file mode 100644 index 0000000..a50471b --- /dev/null +++ b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceName.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2019 Cisco and/or its affiliates. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.fd.jvpp.stats.dto; + +import java.util.Objects; + +public class InterfaceName { + + public int swIfIndex; + public String name; + + public InterfaceName(final int swIfIndex, final String name) { + this.swIfIndex = swIfIndex; + this.name = name; + } + + @Override + public boolean equals(final Object other) { + if (this == other) { + return true; + } + if (other == null || getClass() != other.getClass()) { + return false; + } + final InterfaceName otherIfc = (InterfaceName) other; + return swIfIndex == otherIfc.swIfIndex && name.equals(otherIfc.name); + } + + @Override + public int hashCode() { + return Objects.hash(swIfIndex, name); + } + + @Override + public String toString() { + return "InterfaceName{" + + "swIfIndex=" + swIfIndex + + ", name=" + name + + '}'; + } +} diff --git a/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetails.java b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetails.java new file mode 100644 index 0000000..c437faf --- /dev/null +++ b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetails.java @@ -0,0 +1,71 @@ +/* + * Copyright (c) 2019 Cisco and/or its affiliates. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.fd.jvpp.stats.dto; + +/** + *

This class represents reply DTO for InterfaceNamesDetails. + */ +public final class InterfaceNamesDetails implements io.fd.jvpp.dto.JVppReply { + public int context; + public InterfaceName[] interfaceNames; + public int length; + + public InterfaceNamesDetails(int length, int context) { + this.context = context; + this.length = length; + this.interfaceNames = new InterfaceName[length]; + } + + @Override + @io.fd.jvpp.coverity.SuppressFBWarnings("UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD") + public int hashCode() { + return java.util.Objects.hash(context, interfaceNames, length); + } + + @Override + public boolean equals(final Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + final InterfaceNamesDetails other = (InterfaceNamesDetails) o; + + if (!java.util.Objects.equals(this.context, other.context)) { + return false; + } + if (!java.util.Arrays.equals(this.interfaceNames, other.interfaceNames)) { + return false; + } + if (!java.util.Objects.equals(this.length, other.length)) { + return false; + } else { + return true; + } + } + + @Override + public String toString() { + return "InterfaceNamesDetails{" + + "context=" + context + + ", interfaceNames=" + java.util.Arrays.toString(interfaceNames) + + ", length=" + length + + '}'; + } +} diff --git a/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetailsReplyDump.java b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetailsReplyDump.java new file mode 100644 index 0000000..c1e1b1b --- /dev/null +++ b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDetailsReplyDump.java @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2019 Cisco and/or its affiliates. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.fd.jvpp.stats.dto; + +/** + *

This class represents dump reply wrapper for InterfaceNamesDetails. + */ +public final class InterfaceNamesDetailsReplyDump + implements io.fd.jvpp.dto.JVppReplyDump { + + public InterfaceNamesDetails interfaceNamesDetails; + + @Override + @io.fd.jvpp.coverity.SuppressFBWarnings("UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD") + public int hashCode() { + return java.util.Objects.hash(interfaceNamesDetails); + } + + @Override + public boolean equals(final Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + final InterfaceNamesDetailsReplyDump + other = (InterfaceNamesDetailsReplyDump) o; + + return java.util.Objects.equals(this.interfaceNamesDetails, other.interfaceNamesDetails); + } + + @Override + public String toString() { + return "InterfaceNamesDetailsReplyDump{" + + "interfaceNamesDetails=" + interfaceNamesDetails + + '}'; + } +} diff --git a/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDump.java b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDump.java new file mode 100644 index 0000000..79125aa --- /dev/null +++ b/java/jvpp-stats/io/fd/jvpp/stats/dto/InterfaceNamesDump.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2019 Cisco and/or its affiliates. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.fd.jvpp.stats.dto; + +/** + *

This class represents request DTO. + */ +public final class InterfaceNamesDump implements io.fd.jvpp.dto.JVppDump { + + @Override + @io.fd.jvpp.coverity.SuppressFBWarnings("UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD") + public int hashCode() { + return java.util.Objects.hash(); + } + + @Override + public boolean equals(final Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + return true; + } + + @Override + public String toString() { + return "InterfaceNamesDump{}"; + } + + @Override + public int send(final io.fd.jvpp.JVpp jvpp) throws io.fd.jvpp.VppInvocationException { + return ((io.fd.jvpp.stats.JVppStats) jvpp).interfaceNamesDump(); + } +} -- cgit 1.2.3-korg