aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJakub Dudycz <jakub.dudycz@nokia.com>2019-04-10 12:51:14 +0200
committerJakub Dudycz <jakub.dudycz@nokia.com>2019-04-11 11:01:27 +0000
commitea33ac382e06d2f064d42aebd5b223a3de988b6a (patch)
tree46f8dc222311883cd151c1cddf885a94a5851914
parentd52444107a3c62c1027e35178b76645ceb4d2c4e (diff)
Fix xnf-simulator message sending bug
Fix bug where xnf-simulator was failing to send messages with invalid wire frame. Generated events couldn't pass HV-VES client validatation, because they had empty payload. Change-Id: I20fb6254e432de096acfcfb8f0a0a5f912ca08c0 Signed-off-by: Jakub Dudycz <jakub.dudycz@nokia.com> Issue-ID: DCAEGEN2-1413
-rw-r--r--sources/hv-collector-core/src/main/kotlin/org/onap/dcae/collectors/veshv/impl/Router.kt10
-rw-r--r--sources/hv-collector-ves-message-generator/src/main/kotlin/org/onap/dcae/collectors/veshv/ves/message/generator/generators/RawMessageGenerator.kt8
2 files changed, 10 insertions, 8 deletions
diff --git a/sources/hv-collector-core/src/main/kotlin/org/onap/dcae/collectors/veshv/impl/Router.kt b/sources/hv-collector-core/src/main/kotlin/org/onap/dcae/collectors/veshv/impl/Router.kt
index fe34a9c7..fec713ad 100644
--- a/sources/hv-collector-core/src/main/kotlin/org/onap/dcae/collectors/veshv/impl/Router.kt
+++ b/sources/hv-collector-core/src/main/kotlin/org/onap/dcae/collectors/veshv/impl/Router.kt
@@ -26,9 +26,9 @@ import org.onap.dcae.collectors.veshv.boundary.Sink
import org.onap.dcae.collectors.veshv.boundary.SinkFactory
import org.onap.dcae.collectors.veshv.config.api.model.Route
import org.onap.dcae.collectors.veshv.config.api.model.Routing
-import org.onap.dcae.collectors.veshv.model.ClientContext
import org.onap.dcae.collectors.veshv.domain.RoutedMessage
import org.onap.dcae.collectors.veshv.domain.VesMessage
+import org.onap.dcae.collectors.veshv.model.ClientContext
import org.onap.dcae.collectors.veshv.model.ConsumedMessage
import org.onap.dcae.collectors.veshv.model.MessageDropCause
import org.onap.dcae.collectors.veshv.utils.logging.Logger
@@ -43,12 +43,8 @@ class Router internal constructor(private val routing: Routing,
sinkFactory: SinkFactory,
ctx: ClientContext,
metrics: Metrics) :
- this(routing,
- constructMessageSinks(routing, sinkFactory, ctx),
- ctx,
- metrics) {
- logger.debug(ctx::mdc) { "Routing for client: $routing" }
- logger.trace(ctx::mdc) { "Message sinks configured for client: $messageSinks" }
+ this(routing, constructMessageSinks(routing, sinkFactory, ctx), ctx, metrics) {
+ logger.debug(ctx::mdc) { "Routing configuration for client: $routing" }
}
fun route(message: VesMessage): Flux<ConsumedMessage> =
diff --git a/sources/hv-collector-ves-message-generator/src/main/kotlin/org/onap/dcae/collectors/veshv/ves/message/generator/generators/RawMessageGenerator.kt b/sources/hv-collector-ves-message-generator/src/main/kotlin/org/onap/dcae/collectors/veshv/ves/message/generator/generators/RawMessageGenerator.kt
index 9f20bd29..3eeb6340 100644
--- a/sources/hv-collector-ves-message-generator/src/main/kotlin/org/onap/dcae/collectors/veshv/ves/message/generator/generators/RawMessageGenerator.kt
+++ b/sources/hv-collector-ves-message-generator/src/main/kotlin/org/onap/dcae/collectors/veshv/ves/message/generator/generators/RawMessageGenerator.kt
@@ -19,6 +19,7 @@
*/
package org.onap.dcae.collectors.veshv.ves.message.generator.generators
+import com.google.protobuf.ByteString
import io.netty.buffer.Unpooled
import org.onap.dcae.collectors.veshv.ves.message.generator.api.WireFrameParameters
import org.onap.dcae.collectors.veshv.ves.message.generator.api.WireFrameType
@@ -45,10 +46,15 @@ class RawMessageGenerator : MessageGenerator<WireFrameParameters, ByteBuffer>()
private fun createMessage(messageType: WireFrameType): ByteBuffer =
when (messageType) {
- INVALID_WIRE_FRAME -> wrap(VesEvent.getDefaultInstance().toByteArray())
+ INVALID_WIRE_FRAME -> wrap(constructSampleVesEvent().toByteArray())
INVALID_GPB_DATA -> wrap("invalid vesEvent".toByteArray(Charset.defaultCharset()))
}
+ private fun constructSampleVesEvent() =
+ VesEvent.newBuilder()
+ .setEventFields(ByteString.copyFromUtf8("irrelevant"))
+ .build()
+
private fun wrap(bytes: ByteArray) = Unpooled.wrappedBuffer(bytes).nioBuffer()