Skip to content

Commit

Permalink
improvements + new tests
Browse files Browse the repository at this point in the history
  • Loading branch information
piomin committed Jun 7, 2023
1 parent 748c362 commit 9775935
Show file tree
Hide file tree
Showing 22 changed files with 523 additions and 408 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,9 @@ public class SecurityConfiguration {

@Bean
protected SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http.authorizeRequests().anyRequest().permitAll();
// http.csrf().disable();

return http.build();
return http.authorizeHttpRequests((authorizeRequests) -> authorizeRequests.anyRequest().permitAll())
.csrf().disable()
.build();
}

}
14 changes: 5 additions & 9 deletions department-service/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,6 @@
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-circuitbreaker-resilience4j</artifactId>
Expand All @@ -43,11 +39,11 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.springdoc</groupId>-->
<!-- <artifactId>springdoc-openapi-ui</artifactId>-->
<!-- <version>${springdoc.version}</version>-->
<!-- </dependency>-->
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>${springdoc.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
Expand Down
14 changes: 7 additions & 7 deletions department-service/src/main/resources/application.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
spring:
application:
name: department
cloud:
loadbalancer:
ribbon:
enabled: false
kubernetes:
discovery:
all-namespaces: true
# cloud:
# loadbalancer:
# ribbon:
# enabled: false
# kubernetes:
# discovery:
# all-namespaces: true

logging:
pattern:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,15 +59,15 @@ static void setup() {
System.setProperty(Config.KUBERNETES_HTTP2_DISABLE, "true");
System.setProperty(Config.KUBERNETES_NAMESPACE_SYSTEM_PROPERTY, "default");

ConfigMap cm = client.configMaps().inNamespace("default")
ConfigMap cm = client.configMaps()
.create(buildConfigMap(mongodb.getMappedPort(27017)));
LOG.info("!!! {}", cm);

Service s = client.services().inNamespace("default")
Service s = client.services()
.create(buildService());
LOG.info("!!! {}", s);

Endpoints e = client.endpoints().inNamespace("default")
Endpoints e = client.endpoints()
.create(buildEndpoints());
LOG.info("!!! {}", e);
}
Expand All @@ -78,7 +78,12 @@ private static ConfigMap buildConfigMap(int port) {
.withName("department").withNamespace("default")
.endMetadata()
.addToData("application.properties",
"spring.data.mongodb.uri=mongodb://localhost:" + port + "/test")
"""
spring.data.mongodb.host=localhost
spring.data.mongodb.port=%d
spring.data.mongodb.database=test
spring.data.mongodb.authentication-database=test
""".formatted(port))
.build();
}

Expand Down
16 changes: 11 additions & 5 deletions employee-service/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,6 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.springdoc</groupId>-->
<!-- <artifactId>springdoc-openapi-ui</artifactId>-->
<!-- <version>${springdoc.version}</version>-->
<!-- </dependency>-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
Expand All @@ -43,6 +38,17 @@
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-zipkin</artifactId>
</dependency>
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>${springdoc.version}</version>
</dependency>
<dependency>
<groupId>io.fabric8</groupId>
<artifactId>kubernetes-server-mock</artifactId>
<version>6.7.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
Expand Down
1 change: 1 addition & 0 deletions employee-service/skaffold.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,5 @@ build:
manifests:
rawYaml:
- ../k8s/privileges.yaml
- ../k8s/mongodb-**.yaml
- k8s/**.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
@EnableMongoRepositories
public class EmployeeApplication {

public static void main(String[] args) {
SpringApplication.run(EmployeeApplication.class, args);
}
public static void main(String[] args) {
SpringApplication.run(EmployeeApplication.class, args);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -17,46 +17,46 @@
@RestController
public class EmployeeController {

private static final Logger LOGGER = LoggerFactory.getLogger(EmployeeController.class);
@Autowired
EmployeeRepository repository;
@PostMapping("/")
public Employee add(@RequestBody Employee employee) {
LOGGER.info("Employee add...: {}", employee);
return repository.save(employee);
}
@GetMapping("/{id}")
public Employee findById(@PathVariable("id") String id) {
LOGGER.info("Employee find: id={}", id);
return repository.findById(id).orElseThrow();
}
@GetMapping("/")
public Iterable<Employee> findAll() {
LOGGER.info("Employee find");
return repository.findAll();
}
@GetMapping("/department/{departmentId}")
public List<Employee> findByDepartment(@PathVariable("departmentId") String departmentId) {
LOGGER.info("Employee find: departmentId={}", departmentId);
return repository.findByDepartmentId(departmentId);
}
@GetMapping("/organization/{organizationId}")
public List<Employee> findByOrganization(@PathVariable("organizationId") String organizationId) {
LOGGER.info("Employee find: organizationId={}", organizationId);
return repository.findByOrganizationId(organizationId);
}

@GetMapping("/department-with-delay/{departmentId}")
public List<Employee> findByDepartmentWithDelay(@PathVariable("departmentId") String departmentId) throws InterruptedException {
LOGGER.info("Employee find: departmentId={}", departmentId);
Thread.sleep(2000);
return repository.findByDepartmentId(departmentId);
}
private static final Logger LOGGER = LoggerFactory.getLogger(EmployeeController.class);

@Autowired
EmployeeRepository repository;

@PostMapping("/")
public Employee add(@RequestBody Employee employee) {
LOGGER.info("Employee add...: {}", employee);
return repository.save(employee);
}

@GetMapping("/{id}")
public Employee findById(@PathVariable("id") String id) {
LOGGER.info("Employee find: id={}", id);
return repository.findById(id).orElseThrow();
}

@GetMapping("/")
public Iterable<Employee> findAll() {
LOGGER.info("Employee find");
return repository.findAll();
}

@GetMapping("/department/{departmentId}")
public List<Employee> findByDepartment(@PathVariable("departmentId") String departmentId) {
LOGGER.info("Employee find: departmentId={}", departmentId);
return repository.findByDepartmentId(departmentId);
}

@GetMapping("/organization/{organizationId}")
public List<Employee> findByOrganization(@PathVariable("organizationId") String organizationId) {
LOGGER.info("Employee find: organizationId={}", organizationId);
return repository.findByOrganizationId(organizationId);
}

@GetMapping("/department-with-delay/{departmentId}")
public List<Employee> findByDepartmentWithDelay(@PathVariable("departmentId") String departmentId) throws InterruptedException {
LOGGER.info("Employee find: departmentId={}", departmentId);
Thread.sleep(2000);
return repository.findByDepartmentId(departmentId);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -6,78 +6,78 @@
@Document(collection = "employee")
public class Employee {

@Id
private String id;
private String organizationId;
private String departmentId;
private String name;
private int age;
private String position;

public Employee() {

}
public Employee(String organizationId, String departmentId, String name, int age, String position) {
this.organizationId = organizationId;
this.departmentId = departmentId;
this.name = name;
this.age = age;
this.position = position;
}

public String getId() {
return id;
}

public void setId(String id) {
this.id = id;
}

public String getOrganizationId() {
return organizationId;
}

public void setOrganizationId(String organizationId) {
this.organizationId = organizationId;
}

public String getDepartmentId() {
return departmentId;
}

public void setDepartmentId(String departmentId) {
this.departmentId = departmentId;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public String getPosition() {
return position;
}

public void setPosition(String position) {
this.position = position;
}

@Override
public String toString() {
return "Employee [id=" + id + ", organizationId=" + organizationId + ", departmentId=" + departmentId
+ ", name=" + name + ", position=" + position + "]";
}
@Id
private String id;
private String organizationId;
private String departmentId;
private String name;
private int age;
private String position;

public Employee() {

}

public Employee(String organizationId, String departmentId, String name, int age, String position) {
this.organizationId = organizationId;
this.departmentId = departmentId;
this.name = name;
this.age = age;
this.position = position;
}

public String getId() {
return id;
}

public void setId(String id) {
this.id = id;
}

public String getOrganizationId() {
return organizationId;
}

public void setOrganizationId(String organizationId) {
this.organizationId = organizationId;
}

public String getDepartmentId() {
return departmentId;
}

public void setDepartmentId(String departmentId) {
this.departmentId = departmentId;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public String getPosition() {
return position;
}

public void setPosition(String position) {
this.position = position;
}

@Override
public String toString() {
return "Employee [id=" + id + ", organizationId=" + organizationId + ", departmentId=" + departmentId
+ ", name=" + name + ", position=" + position + "]";
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,9 @@
import pl.piomin.services.employee.model.Employee;

public interface EmployeeRepository extends CrudRepository<Employee, String> {

List<Employee> findByDepartmentId(String departmentId);
List<Employee> findByOrganizationId(String organizationId);


List<Employee> findByDepartmentId(String departmentId);

List<Employee> findByOrganizationId(String organizationId);

}
Loading

0 comments on commit 9775935

Please sign in to comment.