Skip to content

Commit abf10f4

Browse files
authored
Merge pull request #3 from AITestingOrg/update-delete-functionalities
Update delete functionalities
2 parents 5d07b4d + 23bbb76 commit abf10f4

File tree

15 files changed

+298
-14
lines changed

15 files changed

+298
-14
lines changed

Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ FROM frolvlad/alpine-oraclejdk8:slim
22
VOLUME /tmp
33
ADD build/libs/driver-query-0.0.1.jar app.jar
44
ENV JAVA_OPTS=""
5+
ENV MONGO_HOST="mongo"
56
ENV MONGO_PORT="27017"
67
ENV RABBIT_HOST="rabbitmq"
78
EXPOSE 8080
8-
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
9+
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]

build.gradle

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ dependencies {
6161
testCompile('org.springframework.boot:spring-boot-starter-test')
6262
testCompile('org.codehaus.groovy:groovy-all:2.4.6')
6363
testCompile("org.springframework.cloud:spring-cloud-starter-contract-verifier:${verifierVersion}")
64+
testCompile("org.springframework.cloud:spring-cloud-contract-spec:${verifierVersion}")
6465
testCompile("org.springframework.boot:spring-boot-starter-test:${springBootVersion}")
6566
}
6667

@@ -70,6 +71,12 @@ dependencyManagement {
7071
}
7172
}
7273

74+
contracts {
75+
baseClassMappings {
76+
baseClassMapping(".*driverquery.*", "org.aitesting.microservices.driverquery.provider.DriverQueryContractBase")
77+
}
78+
}
79+
7380
checkstyle {
7481
toolVersion = "8.7"
7582
configFile = new File(rootDir, "checkstyle.xml")
@@ -93,6 +100,13 @@ jacocoTestReport {
93100
}
94101

95102
jacocoTestCoverageVerification {
103+
afterEvaluate {
104+
classDirectories = files(classDirectories.files.collect {
105+
fileTree(dir: "${project.buildDir}/classes/main",
106+
exclude: ['**/controllers/DriverControllerExceptionHandler*',
107+
'**/DriverQueryApplication*'])
108+
})
109+
}
96110
violationRules {
97111
rule {
98112
limit {

docker-compose-dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ services:
1515
- "5672:5672"
1616
- "15672:15672"
1717
driver-cmd:
18-
image: aista/tdriver-cmd
18+
image: ../driver-cmd/
1919
container_name: 'driver-cmd'
2020
environment:
2121
- RABBIT_HOST=rabbitmq

docker-compose.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,17 @@ services:
33

44
mongo:
55
image: 'mongo:3.4.1'
6-
container_name: 'mongo'
76
ports:
87
- '27017:27017'
98
volumes:
109
- 'mongo:/data/db'
1110
rabbitmq:
1211
image: rabbitmq:management
13-
container_name: 'rabbitmq'
1412
ports:
1513
- "5672:5672"
1614
- "15672:15672"
1715
driver-cmd:
18-
image: aista/driver-cmd
16+
build: aista/driver-cmd/
1917
container_name: 'driver-cmd'
2018
environment:
2119
- RABBIT_HOST=rabbitmq
@@ -39,4 +37,4 @@ services:
3937
- driver-cmd
4038

4139
volumes:
42-
mongo:
40+
mongo:

libs/driver-common-1.0.jar

29 Bytes
Binary file not shown.

src/main/java/org/aitesting/microservices/driver/query/domain/eventhandlers/DriverEventHandler.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.aitesting.microservices.driver.query.domain.eventhandlers;
22

3+
import org.aitesting.microservices.driver.common.events.DriverAvailabilityChangedEvent;
34
import org.aitesting.microservices.driver.common.events.DriverCreatedEvent;
45
import org.aitesting.microservices.driver.common.events.DriverDeletedEvent;
56
import org.aitesting.microservices.driver.query.domain.models.Driver;
@@ -30,8 +31,17 @@ public void on(DriverCreatedEvent event) {
3031

3132
@EventHandler
3233
public void on(DriverDeletedEvent event) {
33-
LOG.trace("Deleting driver: {}", event.getId());
34+
LOG.info("Deleting driver: {}", event.getId());
3435
driverRepository.delete(event.getId());
3536
LOG.info("Driver deleted: {}", event.getId());
3637
}
38+
39+
@EventHandler
40+
public void on(DriverAvailabilityChangedEvent event) {
41+
LOG.info("Updating driver availability: {}", event.getId());
42+
Driver driver = driverRepository.findOne(event.getId());
43+
driver.setAvailable(event.isAvailable());
44+
driverRepository.save(driver);
45+
LOG.info("Driver availability updated: {}", event.getId());
46+
}
3747
}

src/main/java/org/aitesting/microservices/driver/query/domain/models/Driver.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,4 +81,8 @@ public double getRating() {
8181
public int getNumberOfRatings() {
8282
return numberOfRatings;
8383
}
84+
85+
public void setAvailable(boolean available) {
86+
this.available = available;
87+
}
8488
}

src/main/java/org/aitesting/microservices/driver/query/service/controllers/DriverController.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,16 @@ public ResponseEntity<List<Driver>> getDrivers() {
3030
return new ResponseEntity<>(driverRepository.findAll(), HttpStatus.OK);
3131
}
3232

33-
@GetMapping("drivers/{id}")
33+
@GetMapping("driver/{id}")
3434
public ResponseEntity<Driver> getDriver(@PathVariable UUID id) {
3535
logger.info(String.format("Request for a driver with id: %s", id));
36-
return new ResponseEntity<>(driverRepository.findOne(id), HttpStatus.OK);
36+
Driver driver = driverRepository.findOne(id);
37+
if(driver != null) {
38+
logger.info(String.format("Found driver by ID: %s", id));
39+
return new ResponseEntity<>(driver, HttpStatus.OK);
40+
}
41+
logger.info(String.format("No drivers found by ID: %s", id));
42+
return new ResponseEntity<>(HttpStatus.NOT_FOUND);
3743
}
3844

3945
}
Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
11
package org.aitesting.microservices.driverquery;
22

3+
import org.aitesting.microservices.driver.query.DriverQueryApplication;
34
import org.junit.Test;
45
import org.junit.runner.RunWith;
56
import org.springframework.boot.test.context.SpringBootTest;
7+
import org.springframework.context.annotation.Profile;
68
import org.springframework.test.context.junit4.SpringRunner;
79

810
@RunWith(SpringRunner.class)
9-
@SpringBootTest
11+
@Profile("test")
12+
@SpringBootTest(classes = DriverQueryApplication.class)
1013
public class DriverQueryApplicationTests {
1114

12-
@Test
13-
public void contextLoads() {
14-
}
15-
15+
@Test
16+
public void contextLoads() {
17+
}
1618
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package org.aitesting.microservices.driverquery.configurations;
2+
3+
import java.util.UUID;
4+
5+
public class TestConstants {
6+
public static final UUID id1 = UUID.fromString("1f13bafe-9236-4edf-ac47-bf2f1d3caec6");
7+
public static final String fname1 = "Jason";
8+
public static final String lname1 = "Blossoms";
9+
public static final String address1 = "1457 Maple Street";
10+
public static final String email1 = "jasonblossoms@email.com";
11+
public static final String phone1 = "5437685380";
12+
public static final String license1 = "124D-FEW-CVD-F342";
13+
14+
public static final UUID id2 = UUID.fromString("1f13bafe-9236-4edf-ac47-bf2f1d3caec6");
15+
public static final String fname2 = "Veronica";
16+
public static final String lname2 = "Lodge";
17+
public static final String address2 = "1345 Eastwood";
18+
public static final String email2 = "vlodge@email.com";
19+
public static final String phone2 = "4642785563";
20+
public static final String license2 = "134D-FE5E-CV34D-F3442";
21+
22+
}

0 commit comments

Comments
 (0)