import java.util.Observer; /** * Implementations will take a line and create a set containing all circularly * shifted (move first element to the end) lines possible. Secret: shifting * algorithm. * * @author Alexander Schaap * */ public interface CircularShifterInterface extends Observer { /** * Takes a line (1-D) array and returns a 2-D array representing all shifts of * the given line. * * @param line * source of all the shifts * @return all possible circular shifts */ StorageInterface>> circularShifts( StorageInterface> line); /** * Method that sets the destination line storage. * * @param sls * line storage in which the shifts are stored */ void connect( StorageInterface>>> sls); }