package de.avalax.fitbuddy.domain.model.set;
import java.util.Iterator;
import java.util.List;
public class BasicSets implements Sets {
private List<Set> sets;
private int setIndex;
public BasicSets(List<Set> sets) {
this.sets = sets;
this.setIndex = 0;
}
@Override
public int indexOfCurrentSet() throws SetException {
if (sets.isEmpty()) {
throw new SetException();
}
return setIndex;
}
@Override
public Set get(int position) throws SetException {
if (sets.size() <= position || position < 0) {
throw new SetException();
}
return sets.get(position);
}
@Override
public void setCurrentSet(int position) throws SetException {
if (sets.size() <= position || position < 0) {
throw new SetException();
}
this.setIndex = position;
}
@Override
public int size() {
return sets.size();
}
@Override
public Set createSet() {
Set set = new BasicSet();
sets.add(set);
return set;
}
@Override
public void remove(Set set) {
sets.remove(set);
}
@Override
public Iterator<Set> iterator() {
return sets.iterator();
}
@Override
public String toString() {
return "BasicSets [sets=" + sets + "]";
}
}