diff --git a/.bsp/sbt.json b/.bsp/sbt.json index 4ab18fcf..9230d515 100644 --- a/.bsp/sbt.json +++ b/.bsp/sbt.json @@ -1 +1,16 @@ -{"name":"sbt","version":"1.6.2","bspVersion":"2.0.0-M5","languages":["scala"],"argv":["/home/adarro/.sdkman/candidates/java/22.0.0.2.r11-grl/bin/java","-Xms100m","-Xmx100m","-classpath","/home/adarro/.sdkman/candidates/sbt/1.6.2/bin/sbt-launch.jar","-Dsbt.script=/home/adarro/.sdkman/candidates/sbt/current/bin/sbt","xsbt.boot.Boot","-bsp"]} \ No newline at end of file +{ + "name": "sbt", + "version": "1.6.2", + "bspVersion": "2.0.0-M5", + "languages": ["scala"], + "argv": [ + "/home/adarro/.sdkman/candidates/java/22.0.0.2.r11-grl/bin/java", + "-Xms100m", + "-Xmx100m", + "-classpath", + "/home/adarro/.sdkman/candidates/sbt/1.6.2/bin/sbt-launch.jar", + "-Dsbt.script=/home/adarro/.sdkman/candidates/sbt/current/bin/sbt", + "xsbt.boot.Boot", + "-bsp" + ] +} diff --git a/.circleci/config.yml b/.circleci/config.yml index f153ae81..7a80ce30 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -4,7 +4,7 @@ version: 2.1 orbs: gradle: circleci/gradle@3.0.0 codecov: codecov/codecov@3.2.5 - # coverage-reporter: codacy/coverage-reporter@13.13.7 + coverage-reporter: codacy/coverage-reporter@13.13.7 # Define a job to be invoked later in a workflow. # See: https://circleci.com/docs/2.0/configuration-reference/#jobs jobs: @@ -35,11 +35,11 @@ jobs: steps: - checkout - run: ./gradlew assemble - - run: if [ -e ./gradlew ]; then ./gradlew reportScoverage --continue;else gradle reportScoverage --continue;fi + - run: if [ -e ./gradlew ]; then ./gradlew reportScoverage aggregateScoverage --continue;else gradle reportScoverage aggregateScoverage --continue;fi - codecov/upload - # - coverage-reporter/send_report: - # coverage-reports: report.xml,coverage.info - # project-token: $CODACY_PROJECT_TOKEN + - coverage-reporter/send_report: + coverage-reports: build/reports/scoverage/cobertura.xml + project-token: $CODACY_PROJECT_TOKEN # Download and cache dependencies - restore_cache: keys: diff --git a/.github/workflows/todo-issues.yml b/.github/workflows/todo-issues.yml index 93eeca17..345d4c2c 100644 --- a/.github/workflows/todo-issues.yml +++ b/.github/workflows/todo-issues.yml @@ -1,10 +1,18 @@ - name: "Workflow" - on: ["push"] - jobs: - build: - runs-on: "ubuntu-latest" +name: Create issues from todos +permissions: read-all + +on: + push: + branches: + - master + +jobs: + todos: + runs-on: ubuntu-latest steps: - - uses: "actions/checkout@master" - - name: "TODO to Issue" - uses: "alstr/todo-to-issue-action@v4.5" - id: "todo" + - uses: actions/checkout@v1 + - name: todo-actions + uses: dtinth/todo-actions@master + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + TODO_ACTIONS_MONGO_URL: ${{ secrets.TODO_ACTIONS_MONGO_URL }} diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml index e2bed55d..102a641b 100644 --- a/.trunk/trunk.yaml +++ b/.trunk/trunk.yaml @@ -12,7 +12,7 @@ lint: - checkov@2.4.9 - osv-scanner@1.3.6 - trivy@0.45.0 - - trufflehog@3.54.3 + - trufflehog@3.54.4 - taplo@0.8.1 - actionlint@1.6.25 - dotenv-linter@3.3.0 @@ -22,7 +22,7 @@ lint: - markdownlint@0.36.0 - oxipng@8.0.0 - prettier@3.0.3 - - renovate@36.88.0 + - renovate@36.91.0 - scalafmt@3.7.14 - shellcheck@0.9.0 - shfmt@3.6.0 @@ -35,6 +35,7 @@ runtimes: - python@3.10.8 actions: disabled: + - trunk-check-pre-commit - trunk-announce - trunk-check-pre-push - trunk-fmt-pre-commit diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json index 2f931772..a0b450a4 100644 --- a/.vs/VSWorkspaceState.json +++ b/.vs/VSWorkspaceState.json @@ -1,7 +1,5 @@ { - "ExpandedNodes": [ - "" - ], + "ExpandedNodes": [""], "SelectedNode": "\\build.gradle.kts", "PreviewInSolutionExplorer": false -} \ No newline at end of file +} diff --git a/CHANGELOG.md b/CHANGELOG.md index ea46444c..d70ef907 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,18 +1,23 @@ # Change Log + All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] + ### Added -- Deity Feats -- New Class: Alchemists + +- Deity Feats +- New Class: Alchemists ### Changed -- Testing Racial Feats to filter core feats (exclude deity based etc.) + +- Testing Racial Feats to filter core feats (exclude deity based etc.) ## [0.1.0-alpha] - 2015-12-03 + ### Added [Unreleased]: https://github.com/truthencode/ddo-calc/0.1.0-alpha...HEAD diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index ef6f40f2..e9646bee 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,4 +1,3 @@ - # Contributor Covenant Code of Conduct ## Our Pledge @@ -15,22 +14,22 @@ appearance, race, religion, or sexual identity and orientation. Examples of behavior that contributes to creating a positive environment include: -* Using welcoming and inclusive language -* Being respectful of differing viewpoints and experiences -* Gracefully accepting constructive criticism -* Focusing on what is best for the community -* Showing empathy towards other community members +- Using welcoming and inclusive language +- Being respectful of differing viewpoints and experiences +- Gracefully accepting constructive criticism +- Focusing on what is best for the community +- Showing empathy towards other community members Examples of unacceptable behavior by participants include: -* The use of sexualized language or imagery and unwelcome sexual attention or - advances -* Trolling, insulting/derogatory comments, and personal or political attacks -* Public or private harassment -* Publishing others' private information, such as a physical or electronic - address, without explicit permission -* Other conduct which could reasonably be considered inappropriate in a - professional setting +- The use of sexualized language or imagery and unwelcome sexual attention or + advances +- Trolling, insulting/derogatory comments, and personal or political attacks +- Public or private harassment +- Publishing others' private information, such as a physical or electronic + address, without explicit permission +- Other conduct which could reasonably be considered inappropriate in a + professional setting ## Our Responsibilities @@ -73,6 +72,6 @@ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.ht [homepage]: https://www.contributor-covenant.org [abuse]: adarro@gmail.com + For answers to common questions about this code of conduct, see https://www.contributor-covenant.org/faq - diff --git a/archived/README.md b/archived/README.md index 82b2383d..b0a2873b 100644 --- a/archived/README.md +++ b/archived/README.md @@ -1,4 +1,4 @@ # Archived Projects These are subprojects that aren't currently incubated or slated for any active development. -They may eventually be removed or revived. \ No newline at end of file +They may eventually be removed or revived. diff --git a/archived/toad-api/README.md b/archived/toad-api/README.md index 4cb56c36..31190689 100644 --- a/archived/toad-api/README.md +++ b/archived/toad-api/README.md @@ -1,28 +1,31 @@ # TOAD (The Oracle At DDO) + + ## Contents -- [Overview](#overview) -- [Goals](#goals) -- [Documentation](#documentation) -- [TODO](#todo) -- [Badges](#badges) +- [Overview](#overview) +- [Goals](#goals) +- [Documentation](#documentation) +- [TODO](#todo) +- [Badges](#badges) + ## Overview + ``` DDO Calculations, Planner and Plotting ``` - This is a macro service that I am creating to become more familiar with alternative JVM languages and multiple platforms. This site is designed to host the API calls via multiple protocals compliant with Swagger with hopes of extending to other outlets. I am also a fan of [DDO Online](http://www.ddo.com). -At the end, I would like to create a Character planner that includes the ability to discover / analyze equipment and support a database. Target clients may include Android, Desktop via JavaFx and web (possible Google Web App). +At the end, I would like to create a Character planner that includes the ability to discover / analyze equipment and support a database. Target clients may include Android, Desktop via JavaFx and web (possible Google Web App). The bulk of the codebase is targeted for Scala, with R providing some analytics / graphing of power curves etc. @@ -30,13 +33,14 @@ The transport will eventually be an interconnected RESTful API over Websockets w ## Goals -One of the final additional goals is extensibility. The intention is to provide an Open API and to be both Swagger 2.0 and RAML 0.8 compliant. +One of the final additional goals is extensibility. The intention is to provide an Open API and to be both Swagger 2.0 and RAML 0.8 compliant. This API will should feature Semantic Versioning once considered stable enough to promote out of Alpha status. ## Documentation + ## TODO -## Badges -- - - +## Badges +--- diff --git a/archived/toad-api/build.gradle.kts b/archived/toad-api/build.gradle.kts index 7e9d593d..6b46a75f 100644 --- a/archived/toad-api/build.gradle.kts +++ b/archived/toad-api/build.gradle.kts @@ -91,7 +91,7 @@ dependencies { implementation( group = "io.github.davidgregory084", name = "vertices-core_$scalaMajorVersion", - version = verticesVersion + version = verticesVersion, ) implementation("io.vertx:vertx-codegen:$vertxVersion") @@ -108,7 +108,6 @@ dependencies { testImplementation("org.testcontainers:mongodb:1.16.2") testImplementation("org.testcontainers:junit-jupiter:1.16.2") - /* swapping to Zookeeper over hazelcast due to Java 9+ issues + Pulsar is using Zookeeper So we can attempt to save a bit of overhead */ @@ -151,14 +150,13 @@ dependencies { // Embed web server for testing// https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-server testImplementation("org.eclipse.jetty:jetty-server:11.0.7") - } group = "io.truthencode" version = "0.0.1-SNAPSHOT" description = "TOAD Api" -//java.sourceCompatibility = JavaVersion.VERSION_11 -//java.targetCompatibility = JavaVersion.VERSION_11 +// java.sourceCompatibility = JavaVersion.VERSION_11 +// java.targetCompatibility = JavaVersion.VERSION_11 publishing { publications.create("maven") { @@ -170,13 +168,15 @@ tasks { withType(Test::class.java) { useJUnitPlatform { includeEngines = setOf("scalatest", "junit-jupiter") - if (ci.isCi) - excludeTags = setOf( - "Integration", - "io.truthencode.tags.Integration", - "FunctionOnly", - "io.truthencode.tags.FunctionOnly" - ) + if (ci.isCi) { + excludeTags = + setOf( + "Integration", + "io.truthencode.tags.Integration", + "FunctionOnly", + "io.truthencode.tags.FunctionOnly", + ) + } testLogging { events("passed", "skipped", "failed") } @@ -187,10 +187,10 @@ tasks { // logger.info("concordion output directory: *************************************") // // Use the built-in JUnit support of Gradle. // "test"(Test::class) { - // + // // } } tasks.withType { options.encoding = "UTF-8" -} +} \ No newline at end of file diff --git a/archived/toad-api/configuration/vertx.env b/archived/toad-api/configuration/vertx.env index 43a1c2bf..b2f73109 100644 --- a/archived/toad-api/configuration/vertx.env +++ b/archived/toad-api/configuration/vertx.env @@ -1,10 +1,10 @@ -# Pass java system properties via VERTX_OPTS -# E.g. export VERTX_OPTS="-Dsome.prop=blah" -export VERTX_OPTS="" # Pass application argument via APP_ARGS # E.g. export RUN_ARGS="-conf ${OPENSHIFT_REPO_DIR}/config.json" # If you want HAZELCAST_CLUSTERING don't remove the `-cp` value export RUN_ARGS="-cp $OPENSHIFT_VERTX_DIR/conf/cluster.xml:$OPENSHIFT_VERTX_DIR/conf" +# Pass java system properties via VERTX_OPTS +# E.g. export VERTX_OPTS="-Dsome.prop=blah" +VERTX_OPTS= # To enable Hazelcast clustering # (require having created the application with `-s`) diff --git a/archived/toad-api/src/main/resources/webroot/index.html b/archived/toad-api/src/main/resources/webroot/index.html index 75bfc139..c08618b9 100644 --- a/archived/toad-api/src/main/resources/webroot/index.html +++ b/archived/toad-api/src/main/resources/webroot/index.html @@ -17,11 +17,12 @@ limitations under the License. --> - + -Welcome to the Sample - - -

This is a sample default page

- - \ No newline at end of file + + Welcome to the Sample + + +

This is a sample default page

+ + diff --git a/archived/toad-api/src/main/scala/io/truthencode/toad/config/Bootstrap.scala b/archived/toad-api/src/main/scala/io/truthencode/toad/config/Bootstrap.scala index 6b28bfaa..ea5a16fe 100644 --- a/archived/toad-api/src/main/scala/io/truthencode/toad/config/Bootstrap.scala +++ b/archived/toad-api/src/main/scala/io/truthencode/toad/config/Bootstrap.scala @@ -27,10 +27,10 @@ import scala.concurrent.duration.DurationInt import scala.jdk.CollectionConverters.IterableHasAsScala /** - * Configures and initializes template / routing etc engines. Please see i.t.t.config Package object for important - * implicits in scope including the following: Template engines (Jade / mustache etc) via i.t.t.a.Actors Akka actor - * system Vertx engine Camel Routing Vertx scala integration isn't quite there for 3.x so we'll do that portion in Java - * until then. + * Configures and initializes template / routing etc engines. Please see i.t.t.config Package object + * for important implicits in scope including the following: Template engines (Jade / mustache etc) + * via i.t.t.a.Actors Akka actor system Vertx engine Camel Routing Vertx scala integration isn't + * quite there for 3.x so we'll do that portion in Java until then. */ object Bootstrap { val logger: Logger = LoggerFactory.getLogger(getClass.getSimpleName) @@ -40,11 +40,9 @@ object Bootstrap { def init(): Unit = { logger.info("Bootstrapping") import Implicits._ - // slowInit() + // slowInit() } - - // Spin up Vertx // Let's create a simple vertx route // val router = Router.router(vertx) @@ -107,16 +105,17 @@ object Bootstrap { // Socko Webserver routing (should migrate to camel routing to vertx) /** - * val routes = Routing.Routes val webServer = new WebServer(WebServerConfig("OpenShift", serverIp, serverPort.toInt), - * routes, system) Runtime.getRuntime.addShutdownHook(new Thread { override def run { vertx.close() webServer.stop() } - * }) webServer.start() + * val routes = Routing.Routes val webServer = new WebServer(WebServerConfig("OpenShift", + * serverIp, serverPort.toInt), routes, system) Runtime.getRuntime.addShutdownHook(new Thread { + * override def run { vertx.close() webServer.stop() } }) webServer.start() */ /** * Displays configured ip, port and hostname to info logger. */ def status(): Unit = { - logger.info(s"server configured for @ $serverIp on port $serverPort, and should be available on $hostName") + logger.info( + s"server configured for @ $serverIp on port $serverPort, and should be available on $hostName") } diff --git a/archived/toad-api/src/main/scala/io/truthencode/toad/config/DbInfo.scala b/archived/toad-api/src/main/scala/io/truthencode/toad/config/DbInfo.scala index 7685a56c..3c69b352 100644 --- a/archived/toad-api/src/main/scala/io/truthencode/toad/config/DbInfo.scala +++ b/archived/toad-api/src/main/scala/io/truthencode/toad/config/DbInfo.scala @@ -23,10 +23,22 @@ import configs.syntax._ /** * Created by adarr on 7/15/2016. */ -case class DbInfo(host: String, port: Int, uuid: String, userId: String, pwd: Array[Char], url: String) +case class DbInfo( + host: String, + port: Int, + uuid: String, + userId: String, + pwd: Array[Char], + url: String) object DbInfo { - def apply(host: String, port: Int, uuid: String, userId: String, pwd: String, url: String): DbInfo = + def apply( + host: String, + port: Int, + uuid: String, + userId: String, + pwd: String, + url: String): DbInfo = DbInfo(host, port, uuid, userId, pwd.toCharArray, url) def apply: DbInfo = { diff --git a/archived/toad-api/src/main/scala/io/truthencode/toad/config/package.scala b/archived/toad-api/src/main/scala/io/truthencode/toad/config/package.scala index 00aaaa48..0b36b413 100644 --- a/archived/toad-api/src/main/scala/io/truthencode/toad/config/package.scala +++ b/archived/toad-api/src/main/scala/io/truthencode/toad/config/package.scala @@ -30,13 +30,14 @@ import org.slf4j.{Logger, LoggerFactory} import scala.language.implicitConversions /** - * Stores and / or retrieves general configuration information used by the sub-systems. Also used as a base reference - * for Implicit objects. + * Stores and / or retrieves general configuration information used by the sub-systems. Also used as + * a base reference for Implicit objects. */ package object config { /** - * Implicit services such as the template engine, Default Akka Actor system, Vertx main instance etc. + * Implicit services such as the template engine, Default Akka Actor system, Vertx main instance + * etc. */ object Implicits { implicit lazy val engine = new TemplateEngine diff --git a/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/VertxService.scala b/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/VertxService.scala index fbfad63a..59b67b56 100644 --- a/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/VertxService.scala +++ b/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/VertxService.scala @@ -29,6 +29,7 @@ import org.slf4j.{Logger, LoggerFactory} import java.net.{InetAddress, UnknownHostException} import scala.concurrent.duration import scala.language.postfixOps + /** * Created by adarr on 7/7/2016. */ @@ -49,7 +50,8 @@ object VertxService { val ipv4: String = InetAddress.getLocalHost.getHostAddress val options: VertxOptions = - new VertxOptions().setEventBusOptions(new EventBusOptions().setHost(ipv4).setClusterPublicHost(ipv4)) + new VertxOptions().setEventBusOptions( + new EventBusOptions().setHost(ipv4).setClusterPublicHost(ipv4)) Vertx.clusteredVertx(options) } @@ -109,7 +111,8 @@ object VertxService { * Initializes the Vertx engine synchronously * * @note - * internally calls [[io.truthencode.toad.verticle.VertxService#startVertXAsync()]] with a blocking call. + * internally calls [[io.truthencode.toad.verticle.VertxService#startVertXAsync()]] with a + * blocking call. * @param timeout * maximum wait time to block before failing. (defaults to [[DefaultDuration]] * @return @@ -122,7 +125,8 @@ object VertxService { def fooBar(): Unit = { val ipv4 = InetAddress.getLocalHost.getHostAddress - val options = new VertxOptions().setEventBusOptions(new EventBusOptions().setHost(ipv4).setClusterPublicHost(ipv4)) + val options = new VertxOptions().setEventBusOptions( + new EventBusOptions().setHost(ipv4).setClusterPublicHost(ipv4)) Vertx.clusteredVertx( options, (ar: AsyncResult[Vertx]) => { diff --git a/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/WebSSLCapableServerVerticle.scala b/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/WebSSLCapableServerVerticle.scala index 33999894..65c18180 100644 --- a/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/WebSSLCapableServerVerticle.scala +++ b/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/WebSSLCapableServerVerticle.scala @@ -35,9 +35,9 @@ import java.security.cert.{Certificate, CertificateException} import java.util.Date /** - * A [[io.vertx.core.Verticle]] which starts up the HTTP server for the web application UI. Based on the given - * configuration, the web server may be configured for SSL using a self-generated SSL cert or a provided SSL certificate - * file. The application accepts P12, PEM, and JKS files. + * A [[io.vertx.core.Verticle]] which starts up the HTTP server for the web application UI. Based on + * the given configuration, the web server may be configured for SSL using a self-generated SSL cert + * or a provided SSL certificate file. The application accepts P12, PEM, and JKS files. * * The web server also configures handlers for the Auth Service and the * [[io.vertx.ext.web.handler.sockjs.SockJSHandler]]event bus bridge. @@ -47,12 +47,14 @@ import java.util.Date */ class WebSSLCapableServerVerticle extends AbstractVerticle with DefaultBridgeOptions { val logger: Logger = LoggerFactory.getLogger(getClass.getSimpleName) + /** - * Start this [[io.vertx.core.Verticle]] asynchronously and notify the deploying verticle on success or failure + * Start this [[io.vertx.core.Verticle]] asynchronously and notify the deploying verticle on + * success or failure * * @param startFuture - * A [[java.util.concurrent.Future]] with which to notify the deploying [[io.vertx.core.Verticle]] about success or - * failure + * A [[java.util.concurrent.Future]] with which to notify the deploying + * [[io.vertx.core.Verticle]] about success or failure * @throws Exception * If there is an uncaught error. */ @@ -106,7 +108,8 @@ class WebSSLCapableServerVerticle extends AbstractVerticle with DefaultBridgeOpt if (config.containsKey("certificate-path")) { val certPath = config.getString("certificate-path") // Use a Java Keystore File - if (certPath.toLowerCase().endsWith("jks") && config.getString("certificate-password") != null) { + if (certPath.toLowerCase().endsWith("jks") && config.getString( + "certificate-password") != null) { httpOpts.setKeyStoreOptions( new JksOptions() .setPassword(config.getString("certificate-password")) @@ -130,7 +133,8 @@ class WebSSLCapableServerVerticle extends AbstractVerticle with DefaultBridgeOpt .setKeyPath(certPath)) httpOpts.setSsl(true) } else { - startFuture.fail("A certificate file was provided, but a password for that file was not.") + startFuture.fail( + "A certificate file was provided, but a password for that file was not.") } } else try { @@ -139,20 +143,26 @@ class WebSSLCapableServerVerticle extends AbstractVerticle with DefaultBridgeOpt val store = KeyStore.getInstance("JKS") store.load(null, null) val keypair = new CertAndKeyGen("RSA", "SHA256WithRSA", null) - val x500Name = new X500Name("localhost", "IT", "unknown", "unknown", "unknown", "unknown") + val x500Name = + new X500Name("localhost", "IT", "unknown", "unknown", "unknown", "unknown") keypair.generate(1024) val privKey = keypair.getPrivateKey val chain = new Array[Certificate](1) // ( 1) ; - val cert: Certificate = keypair.getSelfCertificate(x500Name, new Date(), 365 * 24 * 60 * 60) + val cert: Certificate = + keypair.getSelfCertificate(x500Name, new Date(), 365 * 24 * 60 * 60) chain(0) = cert store.setKeyEntry("selfsigned", privKey, "changeit".toCharArray, chain) store.store(new FileOutputStream(".keystore"), "changeit".toCharArray) - httpOpts.setKeyStoreOptions(new JksOptions().setPath(".keystore").setPassword("changeit")) + httpOpts.setKeyStoreOptions( + new JksOptions().setPath(".keystore").setPassword("changeit")) httpOpts.setSsl(true) } catch { - case ex @ (_: KeyStoreException | _: IOException | _: NoSuchAlgorithmException | _: CertificateException | - _: NoSuchProviderException | _: InvalidKeyException | _: SignatureException) => - logger.error("Failed to generate a self-signed cert and other SSL configuration methods failed.", ex) + case ex @ (_: KeyStoreException | _: IOException | _: NoSuchAlgorithmException | + _: CertificateException | _: NoSuchProviderException | _: InvalidKeyException | + _: SignatureException) => + logger.error( + "Failed to generate a self-signed cert and other SSL configuration methods failed.", + ex) startFuture.fail(ex) } future.complete(httpOpts) @@ -161,7 +171,10 @@ class WebSSLCapableServerVerticle extends AbstractVerticle with DefaultBridgeOpt val result = new Handler[AsyncResult[HttpServerOptions]] { override def handle(event: AsyncResult[HttpServerOptions]): Unit = { if (event.succeeded()) { - vertx.createHttpServer(event.result()).requestHandler(router).listen(bindPort, bindAddress) + vertx + .createHttpServer(event.result()) + .requestHandler(router) + .listen(bindPort, bindAddress) logger.info(s"SSL Web server now listening on @ $bindAddress:$bindPort") } diff --git a/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/package.scala b/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/package.scala index 97fb1476..fa937acb 100644 --- a/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/package.scala +++ b/archived/toad-api/src/main/scala/io/truthencode/toad/verticle/package.scala @@ -28,7 +28,8 @@ import org.slf4j.{Logger, LoggerFactory} import scala.language.implicitConversions /** - * The verticle package contains VertX related utilities and Verticles as well as any Vertx specific implicits. + * The verticle package contains VertX related utilities and Verticles as well as any Vertx specific + * implicits. */ package object verticle { @@ -36,11 +37,12 @@ package object verticle { * Vert.x specific implicits mostly used for Java / Scala compatibility. */ object Event2HandlerImplicits { + /** * Maps java events to scala handlers used mostly to transliterate Vert.x Java lambdas to Scala. * * @example - * {{{ + * {{{ * // Java * Vertx.clusteredVertx(options, evt -> { * if (evt.succeeded()) //do something with vertx @@ -56,7 +58,7 @@ package object verticle { * else * log.error("insightful message",res.cause) * } - * }}} + * }}} * @note * also works where for AsyncResult[Unit] * @param event @@ -80,7 +82,9 @@ package object verticle { implicit class DeploymentOptionMerger(helper: DeploymentOptions) { val logger: Logger = LoggerFactory.getLogger(getClass.getSimpleName) - def mergeConfig(opt: Option[Config] = None, mergeOption: MergeOption = MergeOption.MERGE): DeploymentOptions = { + def mergeConfig( + opt: Option[Config] = None, + mergeOption: MergeOption = MergeOption.MERGE): DeploymentOptions = { val json: JsonObject = opt match { case Some(x) => x.root case None => cfg.root() diff --git a/archived/toad-api/src/main/webapp/index.html b/archived/toad-api/src/main/webapp/index.html index 9f1d9eb1..7be1fa56 100644 --- a/archived/toad-api/src/main/webapp/index.html +++ b/archived/toad-api/src/main/webapp/index.html @@ -1,161 +1,241 @@ - + - - - My Whisky Collection + + + My Whisky Collection - - - - - -
-
-

My Whisky Collection

+ + + + + +
+
+

My Whisky Collection

-

Just an example of simple CRUD application developed using Vert.x and Vertx Web.

-
- -
- -