<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to MainVerticle</title><link>https://sourceforge.net/p/garyproject00/wiki/MainVerticle/</link><description>Recent changes to MainVerticle</description><atom:link href="https://sourceforge.net/p/garyproject00/wiki/MainVerticle/feed" rel="self"/><language>en</language><lastBuildDate>Tue, 24 Apr 2018 20:21:04 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/garyproject00/wiki/MainVerticle/feed" rel="self" type="application/rss+xml"/><item><title>MainVerticle modified by Gary Cheng</title><link>https://sourceforge.net/p/garyproject00/wiki/MainVerticle/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -1,50 +1,32 @@
-product.changelogs.yaml
 ~~~
-databaseChangeLog:
+package com.ezshop.product;

- - include:
-    file: product-schema-001.sql
-    relativeToChangelogFile: true
- - include:
-    file: category-data-001.sql
-    relativeToChangelogFile: true
-~~~
-~~~
---liquibase formatted sql logicalFilePath:product-schema-001.sql
+import com.ezshop.product.http.ProductHttpVerticle;
+import io.vertx.core.DeploymentOptions;
+import io.vertx.core.Future;
+import io.vertx.reactivex.core.AbstractVerticle;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;

---changeset gary:1
-CREATE TABLE CATEGORY (
-    CATEGORY_ID         INTEGER IDENTITY PRIMARY KEY,
-    CATEGORY_NAME       VARCHAR(255) NOT NULL,
-    DESCRIPTION         VARCHAR(2000) NOT NULL
-);
---rollback drop table CATEGORY;
+/**
+ * The Main Verticle of Product Micro Services
+ *
+ * @author Gary Cheng
+ */
+public class MainVerticle extends AbstractVerticle {
+    private static final Logger logger = LoggerFactory.getLogger(ProductVerticle.class);

---changeset gary:2
-CREATE TABLE PRODUCT (
-    PRODUCT_ID          INTEGER IDENTITY PRIMARY KEY,
-    PRODUCT_CODE        VARCHAR(32) NOT NULL UNIQUE,
-    PRODUCT_NAME        VARCHAR(255) NOT NULL,
-    DESCRIPTION         VARCHAR(2000) NOT NULL,
-    MANUFACTURER        VARCHAR(64),
-    MODEL               VARCHAR(255),
-    PRICE               DECIMAL(10, 2),
-    CATEGORY_ID         INTEGER,
-    FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY(CATEGORY_ID)
-);
---rollback drop table PRODUCT;
+    @Override
+    public void start(Future&amp;lt;Void&amp;gt; startFuture) {
+        logger.debug("Starting main verticle of product micro services");
+        DeploymentOptions deploymentOptions = new DeploymentOptions().setConfig(this.config());
+        vertx.rxDeployVerticle(ProductVerticle.class.getName(), deploymentOptions)
+                .flatMap(id -&amp;gt; vertx.rxDeployVerticle(ProductHttpVerticle.class.getName(), deploymentOptions))
+                .subscribe(id -&amp;gt; {
+                    startFuture.complete();
+                    logger.debug("All verticles of product micro services are started");
+                });
+    }
+}

 ~~~
-~~~
---liquibase formatted sql logicalFilePath:category-data-001.sql
-
---changeset gary:1
-INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Phone', '...');
-INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Desktop', '...');
-INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Laptop', '...');
-INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Tablet', '...');
-INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Printer', '...');
-INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Networking', '...');
-INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Accessories', '...');
-
-~~~
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Gary Cheng</dc:creator><pubDate>Tue, 24 Apr 2018 20:21:04 -0000</pubDate><guid>https://sourceforge.net5d51e71f6b43fe68f0520fe775d4e3f9fa70e44d</guid></item><item><title>changelog modified by Gary Cheng</title><link>https://sourceforge.net/p/garyproject00/wiki/changelog/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;product.changelogs.yaml&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;databaseChangeLog:

 - include:
    file: product-schema-001.sql
    relativeToChangelogFile: true
 - include:
    file: category-data-001.sql
    relativeToChangelogFile: true
&lt;/pre&gt;&lt;/div&gt;


&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;--liquibase formatted sql logicalFilePath:product-schema-001.sql

--changeset gary:1
CREATE TABLE CATEGORY (
    CATEGORY_ID         INTEGER IDENTITY PRIMARY KEY,
    CATEGORY_NAME       VARCHAR(255) NOT NULL,
    DESCRIPTION         VARCHAR(2000) NOT NULL
);
--rollback drop table CATEGORY;

--changeset gary:2
CREATE TABLE PRODUCT (
    PRODUCT_ID          INTEGER IDENTITY PRIMARY KEY,
    PRODUCT_CODE        VARCHAR(32) NOT NULL UNIQUE,
    PRODUCT_NAME        VARCHAR(255) NOT NULL,
    DESCRIPTION         VARCHAR(2000) NOT NULL,
    MANUFACTURER        VARCHAR(64),
    MODEL               VARCHAR(255),
    PRICE               DECIMAL(10, 2),
    CATEGORY_ID         INTEGER,
    FOREIGN KEY (CATEGORY_ID) REFERENCES CATEGORY(CATEGORY_ID)
);
--rollback drop table PRODUCT;
&lt;/pre&gt;&lt;/div&gt;


&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;--liquibase formatted sql logicalFilePath:category-data-001.sql

--changeset gary:1
INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Phone', '...');
INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Desktop', '...');
INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Laptop', '...');
INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Tablet', '...');
INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Printer', '...');
INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Networking', '...');
INSERT INTO CATEGORY(CATEGORY_NAME, DESCRIPTION) VALUES ('Accessories', '...');
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Gary Cheng</dc:creator><pubDate>Thu, 19 Apr 2018 20:15:11 -0000</pubDate><guid>https://sourceforge.netd7e4549afa08d7f86fd9fa8b6b9cf226e9f36036</guid></item></channel></rss>