Mocktail/src/main/java/de/hsos/swa/ma/api/al/StorageTransport.java

85 lines
2.6 KiB
Java

package de.hsos.swa.ma.api.al;
import java.util.ArrayList;
import org.eclipse.microprofile.faulttolerance.CircuitBreaker;
//import javax.ws.rs.Path;
import javax.enterprise.context.ApplicationScoped;
@ApplicationScoped
//@Path("/mocktail/storage")
public class StorageTransport {
private ArrayList<Mocktail> mocktails;
public StorageTransport() {
this.mocktails = new ArrayList<Mocktail>();
this.mocktails.add(new Mocktail(0, "caipi", "keineahnung", "ruehren"));
this.mocktails.add(new Mocktail(1, "caipi2", "keineahnung", "ruehren"));
this.mocktails.add(new Mocktail(2, "caipi3", "keineahnung", "ruehren"));
this.mocktails.add(new Mocktail(3, "caipi4", "keineahnung", "ruehren"));
this.mocktails.add(new Mocktail(4, "caipi5", "keineahnung", "ruehren"));
}
@CircuitBreaker(requestVolumeThreshold = 4)
public ArrayList<Mocktail> getMocktailByName(String name) {
ArrayList<Mocktail> transport = new ArrayList<Mocktail>();
for(int i = 0; i < this.mocktails.size(); i++){
if(this.mocktails.get(i).name.equals(name)){
transport.add(this.mocktails.get(i));
}
}
return transport;
}
public ArrayList<Mocktail> getAllMocktails() {
return this.mocktails;
}
public ArrayList<Mocktail> getMocktailByIngredient(String ingredient) {
ArrayList<Mocktail> transport = new ArrayList<Mocktail>();
for(int i = 0; i < this.mocktails.size(); i++){
if(this.mocktails.get(i).ingredients.equals(ingredient)){
transport.add(this.mocktails.get(i));
}
}
return transport;
}
public boolean addMocktail(Mocktail m) {
if(this.mocktails.add(m)){
return true;
}else {
return false;
}
}
public boolean updateMocktail(Mocktail m, long number) {
int index = -1;
int i = 0;
if(this.mocktails.isEmpty()){
return false;
}
while(i < this.mocktails.size()) {
if(this.mocktails.get(i).getId() == number){
index = i;
}
i++;
}
if (index < 0){
return false;
}
this.mocktails.get(index).setName(m.getName());
this.mocktails.get(index).setIngredients(m.getIngredients());
this.mocktails.get(index).setRecipe(m.getRecipe());
return true;
}
public boolean deleteMocktail(long index) {
System.out.println("Test... :D");
return this.mocktails.remove(this.mocktails.get((int)index));
}
}