package de.skuzzle.polly.sdk.httpv2.html; import java.util.Collections; import java.util.HashSet; import java.util.Map; import java.util.Set; import de.skuzzle.polly.http.api.HttpEvent; import de.skuzzle.polly.sdk.MyPolly; import de.skuzzle.polly.sdk.User; import de.skuzzle.polly.sdk.httpv2.SuccessResult; import de.skuzzle.polly.sdk.util.DirectedComparator.SortOrder; public abstract class AbstractHTMLTableModel<T> implements HTMLTableModel<T> { private final Set<String> permissions; public AbstractHTMLTableModel() { this.permissions = new HashSet<>(); } protected void requirePermission(String permission) { this.permissions.add(permission); } @Override public Set<String> getRequiredPermission() { return this.permissions; } @Override public boolean isFilterable(int column) { return false; } @Override public boolean isSortable(int column) { return false; } @Override public boolean isEditable(int column) { return false; } @Override public boolean isFilterOnly() { return false; } @Override public SuccessResult setCellValue(int column, T element, String value, User executor, MyPolly myPolly) { return new SuccessResult(false, "Not implemented"); //$NON-NLS-1$ } @Override public Class<?> getColumnClass(int column) { return Object.class; } @Override public Map<String, String> getRequestParameters(HttpEvent e) { return Collections.emptyMap(); } @Override public int getDefaultSortColumn() { return -1; } @Override public SortOrder getDefaultSortOrder() { return SortOrder.UNDEFINED; } @Override public String getRefreshKey() { return null; } }