package com.zhuinden.simplestackdemonestedstack.presentation.paths.main;
import com.google.auto.value.AutoValue;
import com.zhuinden.simplestackdemonestedstack.R;
import com.zhuinden.simplestackdemonestedstack.application.Key;
import com.zhuinden.simplestackdemonestedstack.util.Composite;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
/**
* Created by Zhuinden on 2017.02.26..
*/
@AutoValue
public abstract class MainKey
extends Key
implements Composite {
@Override
public int layout() {
return R.layout.path_main;
}
@Override
public String stackIdentifier() {
return "";
}
public static MainKey create() {
return new AutoValue_MainKey();
}
@Override
public List<?> keys() {
MainView.StackType[] stackTypes = MainView.StackType.values();
List<Key> list = new ArrayList<>(stackTypes.length);
for(MainView.StackType stackType : stackTypes) {
list.add(stackType.getKey());
}
return Collections.unmodifiableList(list);
}
@Override
public boolean hasNestedStack() {
return true;
}
@Override
protected List<?> initialKeys() {
return Arrays.asList(MainView.StackType.values()[0].getKey());
}
}