- hv-collector-main/target/reports
- hv-collector-utils/target/reports
- hv-collector-dcae-app-simulator/target/reports
- - hv-collector-client-simulator/target/reports
+ - hv-collector-xnf-simulator/target/reports
publish:
- mv hv-collector-main/target/reports public/analysis/main
- mv hv-collector-utils/target/reports public/analysis/utils
- mv hv-collector-dcae-app-simulator/target/reports public/analysis/dcae-app-simulator
- - mv hv-collector-client-simulator/target/reports public/analysis/client-simulator
+ - mv hv-collector-xnf-simulator/target/reports public/analysis/xnf-simulator
- ./ssl/:/etc/ves-hv/
xnf-simulator:
- image: onap/ves-hv-collector-client-simulator
+ image: onap/ves-hv-collector-xnf-simulator
# build:
-# context: hv-collector-client-simulator
+# context: hv-collector-xnf-simulator
# dockerfile: Dockerfile
ports:
- "8000:5000/tcp"
</dependency>
<dependency>
<groupId>${project.parent.groupId}</groupId>
- <artifactId>hv-collector-client-simulator</artifactId>
+ <artifactId>hv-collector-xnf-simulator</artifactId>
<version>${project.parent.version}</version>
</dependency>
<dependency>
</dependency>
<dependency>
<groupId>${project.parent.groupId}</groupId>
- <artifactId>hv-collector-client-simulator</artifactId>
+ <artifactId>hv-collector-xnf-simulator</artifactId>
<version>${project.parent.version}</version>
</dependency>
package org.onap.dcae.collectors.veshv.tests.component
import arrow.syntax.function.partially1
-import io.netty.buffer.ByteBuf
-import io.netty.buffer.ByteBufAllocator
-import io.netty.buffer.CompositeByteBuf
-import io.netty.buffer.Unpooled
-import io.netty.buffer.UnpooledByteBufAllocator
+import io.netty.buffer.*
import org.assertj.core.api.Assertions.assertThat
import org.jetbrains.spek.api.Spek
import org.jetbrains.spek.api.dsl.describe
CMD ["--ves-host", "ves-hv-collector", "--ves-port", "6061"]
COPY target/libs/external/* ./
COPY target/libs/internal/* ./
-COPY target/hv-collector-client-simulator-*.jar ./
+COPY target/hv-collector-xnf-simulator-*.jar ./
<relativePath>..</relativePath>
</parent>
- <artifactId>hv-collector-client-simulator</artifactId>
- <description>VES HighVolume Collector :: Client simulator</description>
+ <artifactId>hv-collector-xnf-simulator</artifactId>
+ <description>VES HighVolume Collector :: XNF simulator</description>
<properties>
<skipAnalysis>false</skipAnalysis>
- <docker-image.name>ves-hv-collector-client-simulator</docker-image.name>
+ <docker-image.name>ves-hv-collector-xnf-simulator</docker-image.name>
</properties>
<build>
* @author Jakub Dudycz <jakub.dudycz@nokia.com>
* @since June 2018
*/
-internal object DefaultValues {
- const val MESSAGES_AMOUNT = -1L
- const val PRIVATE_KEY_FILE = "/etc/ves-hv/client.key"
- const val CERT_FILE = "/etc/ves-hv/client.crt"
- const val TRUST_CERT_FILE = "/etc/ves-hv/trust.crt"
- const val VES_HV_PORT = 6061
- const val VES_HV_HOST = "veshvcollector"
-}
-
-internal class ArgBasedClientConfiguration : ArgBasedConfiguration<ClientConfiguration>(DefaultParser()) {
+internal class ArgConfigurationProvider : ArgBasedConfiguration<SimulatorConfiguration>(DefaultParser()) {
override val cmdLineOptionsList = listOf(
VES_HV_PORT,
VES_HV_HOST,
TRUST_CERT_FILE
)
- override fun getConfiguration(cmdLine: CommandLine): ClientConfiguration {
+ override fun getConfiguration(cmdLine: CommandLine): SimulatorConfiguration {
val host = cmdLine.stringValue(VES_HV_HOST, DefaultValues.VES_HV_HOST)
val port = cmdLine.intValue(VES_HV_PORT, DefaultValues.VES_HV_PORT)
val messagesAmount = cmdLine.longValue(MESSAGES_TO_SEND_AMOUNT, DefaultValues.MESSAGES_AMOUNT)
- return ClientConfiguration(
+ return SimulatorConfiguration(
host,
port,
parseSecurityConfig(cmdLine),
trustedCert = stringPathToPath(trustCertFile))
}
+ internal object DefaultValues {
+ const val MESSAGES_AMOUNT = -1L
+ const val PRIVATE_KEY_FILE = "/etc/ves-hv/client.key"
+ const val CERT_FILE = "/etc/ves-hv/client.crt"
+ const val TRUST_CERT_FILE = "/etc/ves-hv/trust.crt"
+ const val VES_HV_PORT = 6061
+ const val VES_HV_HOST = "veshvcollector"
+ }
}
* @author Jakub Dudycz <jakub.dudycz@nokia.com>
* @since June 2018
*/
-internal data class ClientConfiguration(
+internal data class SimulatorConfiguration(
val vesHost: String,
val vesPort: Int,
val security: SecurityConfiguration,
* @author Jakub Dudycz <jakub.dudycz@nokia.com>
* @since June 2018
*/
-internal class HttpServer(private val vesClient: VesHvClient) {
+internal class HttpServer(private val vesClient: XnfSimulator) {
fun start(port: Int = DEFAULT_PORT): IO<RatpackServer> = IO {
RatpackServer.start { server ->
import org.onap.dcae.collectors.veshv.domain.SecurityConfiguration
import org.onap.dcae.collectors.veshv.domain.WireFrame
import org.onap.dcae.collectors.veshv.domain.WireFrameEncoder
-import org.onap.dcae.collectors.veshv.simulators.xnf.config.ClientConfiguration
+import org.onap.dcae.collectors.veshv.simulators.xnf.config.SimulatorConfiguration
import org.onap.dcae.collectors.veshv.utils.logging.Logger
import org.reactivestreams.Publisher
import reactor.core.publisher.Flux
* @author Jakub Dudycz <jakub.dudycz@nokia.com>
* @since June 2018
*/
-internal class VesHvClient(private val configuration: ClientConfiguration) {
+internal class XnfSimulator(private val configuration: SimulatorConfiguration) {
private val client: TcpClient = TcpClient.builder()
.options { opts ->
companion object {
private const val MAX_BATCH_SIZE = 128
- private val logger = Logger(VesHvClient::class)
+ private val logger = Logger(XnfSimulator::class)
}
}
*/
package org.onap.dcae.collectors.veshv.simulators.xnf
-import org.onap.dcae.collectors.veshv.simulators.xnf.config.ArgBasedClientConfiguration
+import org.onap.dcae.collectors.veshv.simulators.xnf.config.ArgConfigurationProvider
import org.onap.dcae.collectors.veshv.simulators.xnf.impl.HttpServer
-import org.onap.dcae.collectors.veshv.simulators.xnf.impl.VesHvClient
+import org.onap.dcae.collectors.veshv.simulators.xnf.impl.XnfSimulator
import org.onap.dcae.collectors.veshv.utils.arrow.ExitFailure
import org.onap.dcae.collectors.veshv.utils.arrow.unsafeRunEitherSync
import org.onap.dcae.collectors.veshv.utils.arrow.void
import org.onap.dcae.collectors.veshv.utils.commandline.handleWrongArgumentErrorCurried
import org.onap.dcae.collectors.veshv.utils.logging.Logger
-import org.slf4j.LoggerFactory
private const val PACKAGE_NAME = "org.onap.dcae.collectors.veshv.simulators.xnf"
private val logger = Logger(PACKAGE_NAME)
* @since June 2018
*/
fun main(args: Array<String>) =
- ArgBasedClientConfiguration().parse(args)
+ ArgConfigurationProvider().parse(args)
.mapLeft(handleWrongArgumentErrorCurried(PROGRAM_NAME))
- .map(::VesHvClient)
+ .map(::XnfSimulator)
.map(::HttpServer)
.map { it.start().void() }
.unsafeRunEitherSync(
*/
package org.onap.dcae.collectors.veshv.main.config
-import arrow.core.Failure
-import arrow.core.Success
import arrow.core.identity
import org.assertj.core.api.Assertions.assertThat
import org.jetbrains.spek.api.Spek
import org.jetbrains.spek.api.dsl.it
import org.jetbrains.spek.api.dsl.on
import org.onap.dcae.collectors.veshv.domain.SecurityConfiguration
-import org.onap.dcae.collectors.veshv.simulators.xnf.config.ArgBasedClientConfiguration
-import org.onap.dcae.collectors.veshv.simulators.xnf.config.ClientConfiguration
-import org.onap.dcae.collectors.veshv.simulators.xnf.config.DefaultValues
+import org.onap.dcae.collectors.veshv.simulators.xnf.config.ArgConfigurationProvider
+import org.onap.dcae.collectors.veshv.simulators.xnf.config.ArgConfigurationProvider.*
+import org.onap.dcae.collectors.veshv.simulators.xnf.config.SimulatorConfiguration
import java.nio.file.Paths
-object ArgBasedClientConfigurationTest : Spek({
- lateinit var cut: ArgBasedClientConfiguration
+object ArgConfigurationProviderTest : Spek({
+ lateinit var cut: ArgConfigurationProvider
val messagesAmount = 3L
val vesHost = "localhosting"
val pk = Paths.get("/", "etc", "ves", "pk.pem")
val trustCert = Paths.get("/", "etc", "ves", "trusted.crt")
beforeEachTest {
- cut = ArgBasedClientConfiguration()
+ cut = ArgConfigurationProvider()
}
- fun parse(vararg cmdLine: String): ClientConfiguration =
+ fun parse(vararg cmdLine: String): SimulatorConfiguration =
cut.parse(cmdLine).fold(
{throw AssertionError("Parsing result should be present")},
::identity
)
describe("parsing arguments") {
- lateinit var result: ClientConfiguration
+ lateinit var result: SimulatorConfiguration
given("all parameters are present in the long form") {
<modules>
<module>hv-collector-analysis</module>
- <module>hv-collector-client-simulator</module>
+ <module>hv-collector-xnf-simulator</module>
<module>hv-collector-core</module>
<module>hv-collector-coverage</module>
<module>hv-collector-ct</module>
<li><a href="./analysis/main/detekt-report.html">Main</a></li>
<li><a href="./analysis/utils/detekt-report.html">Utils</a></li>
<li><a href="./analysis/dcae-app-simulator/detekt-report.html">DCAE APP simulator</a></li>
- <li><a href="./analysis/client-simulator/detekt-report.html">xNF simulator</a></li>
+ <li><a href="./analysis/xnf-simulator/detekt-report.html">xNF simulator</a></li>
</ul>
</li>
<li><a href="./coverage">Coverage</a> (please note that Jacoco support for Kotlin is currently very problematic so the values are invalid)