Commit 678333c6 by Patryk Czarnik

POST zwracający minimalny dokumenci JSON

parent 4d68b715
......@@ -46,6 +46,7 @@ public class RCustomers {
CustomerDAO customerDAO = db.customerDAO();
customerDAO.save(customer);
db.commit();
// Zwracamy informację, pod jakim adresem został zapisany rekord.
URI uri = UriBuilder
.fromResource(RCustomers.class)
.path(String.valueOf(customer.getEmail()))
......
......@@ -75,14 +75,35 @@ public class RProducts {
@POST
@Consumes({"application/json", "application/xml"})
@Produces({"application/json"})
// W metodach typu POST i PUT powinien znajdować się dokładnie jeden parametr nieozanczony żadną adnotacją.
// Do tego parametru zostanie przekazana wartość utworzona na podstawie treści zapytania (content / body / entity).
// W adnotacji @Consumes określamy format, w jakim te dane mają być przysłane.
public void saveProduct(Product product) throws DBException {
public InformacjaZwrotna saveProduct(Product product) throws DBException {
try(DBConnection db = DBConnection.open()) {
ProductDAO productDAO = db.productDAO();
productDAO.save(product);
db.commit();
return new InformacjaZwrotna(product.getProductId());
}
}
public static class InformacjaZwrotna {
private int noweId;
public InformacjaZwrotna() {
}
public InformacjaZwrotna(int noweId) {
this.noweId = noweId;
}
public int getNoweId() {
return noweId;
}
public void setNoweId(int noweId) {
this.noweId = noweId;
}
}
......
......@@ -48,11 +48,32 @@ public class RProductsJSON {
// W metodach typu POST i PUT powinien znajdować się dokładnie jeden parametr nieozanczony żadną adnotacją.
// Do tego parametru zostanie przekazana wartość utworzona na podstawie treści zapytania (content / body / entity).
// W adnotacji @Consumes określamy format, w jakim te dane mają być przysłane.
public void saveProduct(Product product) throws DBException {
public InformacjaZwrotna saveProduct(Product product) throws DBException {
try(DBConnection db = DBConnection.open()) {
ProductDAO productDAO = db.productDAO();
productDAO.save(product);
db.commit();
return new InformacjaZwrotna(product.getProductId());
}
}
// klasa definiująca, co jest zwracane w wyniku POST po zapisaniu produktu
public static class InformacjaZwrotna {
private int noweId;
public InformacjaZwrotna() {
}
public InformacjaZwrotna(int noweId) {
this.noweId = noweId;
}
public int getNoweId() {
return noweId;
}
public void setNoweId(int noweId) {
this.noweId = noweId;
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment