Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refaktoring kafka, camunda, models etc #12

Merged
merged 7 commits into from
Dec 14, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public ISBNServiceLocator(java.lang.String wsdlLoc, javax.xml.namespace.QName sN
}

// Use to get a proxy class for ISBNServiceSoap
private java.lang.String ISBNServiceSoap_address = "https://webservices.daehosting.com/services/ISBNService.wso";
private java.lang.String ISBNServiceSoap_address = "http://webservices.daehosting.com/services/isbnservice.wso";

public java.lang.String getISBNServiceSoapAddress() {
return ISBNServiceSoap_address;
Expand Down Expand Up @@ -71,7 +71,7 @@ public void setISBNServiceSoapEndpointAddress(java.lang.String address) {


// Use to get a proxy class for ISBNServiceSoap12
private java.lang.String ISBNServiceSoap12_address = "https://webservices.daehosting.com/services/ISBNService.wso";
private java.lang.String ISBNServiceSoap12_address = "http://webservices.daehosting.com/services/isbnservice.wso";

public java.lang.String getISBNServiceSoap12Address() {
return ISBNServiceSoap12_address;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:tns="http://webservices.daehosting.com/ISBN" name="ISBNService" targetNamespace="http://webservices.daehosting.com/ISBN">
<types>
<xs:schema elementFormDefault="qualified" targetNamespace="http://webservices.daehosting.com/ISBN">
<xs:element name="IsValidISBN13">
<xs:complexType>
<xs:sequence>
<xs:element name="sISBN" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsValidISBN13Response">
<xs:complexType>
<xs:sequence>
<xs:element name="IsValidISBN13Result" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsValidISBN10">
<xs:complexType>
<xs:sequence>
<xs:element name="sISBN" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="IsValidISBN10Response">
<xs:complexType>
<xs:sequence>
<xs:element name="IsValidISBN10Result" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</types>
<message name="IsValidISBN13SoapRequest">
<part name="parameters" element="tns:IsValidISBN13"/>
</message>
<message name="IsValidISBN13SoapResponse">
<part name="parameters" element="tns:IsValidISBN13Response"/>
</message>
<message name="IsValidISBN10SoapRequest">
<part name="parameters" element="tns:IsValidISBN10"/>
</message>
<message name="IsValidISBN10SoapResponse">
<part name="parameters" element="tns:IsValidISBN10Response"/>
</message>
<portType name="ISBNServiceSoapType">
<operation name="IsValidISBN13">
<documentation>The test is done by calculation on the first 12 digits and compare the result with the checksum number at the end. You have to pass a 13 digits number.</documentation>
<input message="tns:IsValidISBN13SoapRequest"/>
<output message="tns:IsValidISBN13SoapResponse"/>
</operation>
<operation name="IsValidISBN10">
<documentation>The test is done by calculation on the first 9 digits and compare the result with the checksum number at the end. You have to pass a 10 digits number or 8 digits and an X.</documentation>
<input message="tns:IsValidISBN10SoapRequest"/>
<output message="tns:IsValidISBN10SoapResponse"/>
</operation>
</portType>
<binding name="ISBNServiceSoapBinding" type="tns:ISBNServiceSoapType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="IsValidISBN13">
<soap:operation soapAction="" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="IsValidISBN10">
<soap:operation soapAction="" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<binding name="ISBNServiceSoapBinding12" type="tns:ISBNServiceSoapType">
<soap12:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="IsValidISBN13">
<soap12:operation soapAction="" style="document"/>
<input>
<soap12:body use="literal"/>
</input>
<output>
<soap12:body use="literal"/>
</output>
</operation>
<operation name="IsValidISBN10">
<soap12:operation soapAction="" style="document"/>
<input>
<soap12:body use="literal"/>
</input>
<output>
<soap12:body use="literal"/>
</output>
</operation>
</binding>
<service name="ISBNService">
<documentation>DataFlex Web Service to validate ISBN numbers.</documentation>
<port name="ISBNServiceSoap" binding="tns:ISBNServiceSoapBinding">
<soap:address location="http://webservices.daehosting.com/services/isbnservice.wso"/>
</port>
<port name="ISBNServiceSoap12" binding="tns:ISBNServiceSoapBinding12">
<soap12:address location="http://webservices.daehosting.com/services/isbnservice.wso"/>
</port>
</service>
</definitions>
10 changes: 5 additions & 5 deletions Examproject/Services/ProcessSaleService/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -121,11 +121,11 @@
<!-- <version>2.0.0.RELEASE</version>-->
<!-- </dependency>-->

<!-- <dependency>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-actuator</artifactId>-->
<!-- <version>2.1.5.RELEASE</version>-->
<!-- </dependency>-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>2.5.4</version>
</dependency>

<!-- <dependency>-->
<!-- <groupId>org.springframework.cloud</groupId>-->
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package holdkrykke.processsaleservice.exceptions;


public class ProcessSaleException extends Exception {
public ProcessSaleException(String message) {
super(message);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,13 @@
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;

import java.io.Serializable;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Order {
public class Order implements Serializable {
@Id
private String id;
private String orderNumber;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,16 @@
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class OrderItem {
private String ISBN;
public class OrderItem implements Serializable {
private String isbn;
private String title;
private String authors;
private String edition;
private String subject;
private String[] authors;
private String location;
private String language;
private int pages;
private int year;
private int quantity;
private Boolean isDigital;
private String type; // ebook, audiobook, book
private Double price;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package holdkrykke.processsaleservice.models;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

@AllArgsConstructor
@NoArgsConstructor
@Data
public class OrderNumberDTO implements Serializable {
private String orderNumber;

public OrderNumberDTO(Order order){
this.orderNumber = order.getOrderNumber();
}
}
Original file line number Diff line number Diff line change
@@ -1,20 +1,21 @@
package holdkrykke.processsaleservice.services.camunda;

import com.mongodb.MongoException;
import holdkrykke.processsaleservice.exceptions.ProcessSaleException;
import holdkrykke.processsaleservice.models.Order;
import holdkrykke.processsaleservice.repositories.OrderRepository;
import holdkrykke.processsaleservice.services.mail.MailService;
import org.camunda.bpm.engine.delegate.DelegateExecution;
import org.camunda.bpm.engine.delegate.JavaDelegate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.logging.Logger;

@Service
public class ProcessDigitalOrder implements JavaDelegate {

private final static Logger LOGGER = Logger.getLogger("");
private static final Logger logger = LoggerFactory.getLogger(ProcessDigitalOrder.class);
@Autowired
private OrderRepository orderRepository;

Expand All @@ -23,17 +24,18 @@ public class ProcessDigitalOrder implements JavaDelegate {

public void execute(DelegateExecution execution) throws Exception {
Order order = (Order) execution.getVariable("order");
System.out.println("PROCESSING DIGITAL " + order);
logger.info("Processing and shipping digital order [{}]", order);
try {
Order _order = orderRepository.findByOrderNumber(order.getOrderNumber());
_order.setOrderStatus("shipped");
orderRepository.save(_order);
Order updatedOrder = orderRepository.findByOrderNumber(_order.getOrderNumber());
System.out.println("New order status: " + updatedOrder);
logger.info("Digital order, orderStatus changed [{}]", updatedOrder.getOrderStatus());
mailService.sendEmail(updatedOrder.getCustomerMail(), "Order shipping information: " + updatedOrder.getOrderNumber(),
mailService.createBody(updatedOrder));
} catch (MongoException ex) {
System.out.println(ex.getMessage());
logger.error("Processing MongoException caught [{}]", ex.getMessage());
throw new ProcessSaleException(ex.getMessage());
}
}
}
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
package holdkrykke.processsaleservice.services.camunda;

import com.mongodb.MongoException;
import holdkrykke.processsaleservice.exceptions.ProcessSaleException;
import holdkrykke.processsaleservice.models.Order;
import holdkrykke.processsaleservice.repositories.OrderRepository;
import holdkrykke.processsaleservice.services.mail.MailService;
import org.camunda.bpm.engine.delegate.DelegateExecution;
import org.camunda.bpm.engine.delegate.JavaDelegate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.logging.Logger;

@Service
public class ProcessPhysicalOrder implements JavaDelegate {
private final static Logger LOGGER = Logger.getLogger("");
private static final Logger logger = LoggerFactory.getLogger(ProcessPhysicalOrder.class);

@Autowired
private OrderRepository orderRepository;
Expand All @@ -23,18 +24,18 @@ public class ProcessPhysicalOrder implements JavaDelegate {

public void execute(DelegateExecution execution) throws Exception {
Order order = (Order) execution.getVariable("order");
System.out.println("PROCESSING PHYSICAL " + order);
logger.info("Processing physical order [{}]", order);
try {
Order _order = orderRepository.findByOrderNumber(order.getOrderNumber());
_order.setOrderStatus("processing");
orderRepository.save(_order);
Order updatedOrder = orderRepository.findByOrderNumber(_order.getOrderNumber());
System.out.println("New order status: " + updatedOrder);
logger.info("Physical order, orderStatus changed [{}]", updatedOrder.getOrderStatus());
mailService.sendEmail(updatedOrder.getCustomerMail(), "Order confirmation: " + updatedOrder.getOrderNumber(),
mailService.createBody(updatedOrder));

} catch (MongoException ex) {
System.out.println(ex.getMessage());
logger.error("Processing MongoException caught [{}]", ex.getMessage());
throw new ProcessSaleException(ex.getMessage());
}
}
}
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
package holdkrykke.processsaleservice.services.camunda;

import com.mongodb.MongoException;
import holdkrykke.processsaleservice.exceptions.ProcessSaleException;
import holdkrykke.processsaleservice.models.Order;
import holdkrykke.processsaleservice.repositories.OrderRepository;
import holdkrykke.processsaleservice.services.mail.MailService;
import org.camunda.bpm.engine.delegate.DelegateExecution;
import org.camunda.bpm.engine.delegate.JavaDelegate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.logging.Logger;

@Service
public class ShipPhysicalOrder implements JavaDelegate {
private final static Logger LOGGER = Logger.getLogger("");
private static final Logger logger = LoggerFactory.getLogger(ShipPhysicalOrder.class);

@Autowired
private OrderRepository orderRepository;
Expand All @@ -23,18 +24,18 @@ public class ShipPhysicalOrder implements JavaDelegate {

public void execute(DelegateExecution execution) throws Exception {
Order order = (Order) execution.getVariable("order");
System.out.println("SHIPPING PHYSICAL " + order);
logger.info("Shipping physical order [{}]", order);
try {
Order _order = orderRepository.findByOrderNumber(order.getOrderNumber());
_order.setOrderStatus("shipped");
orderRepository.save(_order);
Order updatedOrder = orderRepository.findByOrderNumber(_order.getOrderNumber());
System.out.println("New order status: " + updatedOrder);
logger.info("Physical order, orderStatus changed [{}]", updatedOrder.getOrderStatus());
mailService.sendEmail(updatedOrder.getCustomerMail(), "Order shipping information: " + updatedOrder.getOrderNumber(),
mailService.createBody(updatedOrder));

} catch (MongoException ex) {
System.out.println(ex.getMessage());
logger.error("Processing MongoException caught [{}]", ex.getMessage());
throw new ProcessSaleException(ex.getMessage());
}
}
}
Loading