All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jsoftware.command.RollbackListCommand Maven / Gradle / Ivy

package org.jsoftware.command;

import org.jsoftware.config.AbstractPatch;
import org.jsoftware.config.Patch;
import org.jsoftware.config.RollbackPatch;
import org.jsoftware.impl.DuplicatePatchNameException;
import org.jsoftware.impl.PatchParser;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.sql.SQLException;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;


/**
 * Runs auto-patch mode
 * @author szalik
 */
public class RollbackListCommand extends AbstractListCommand {
    protected boolean output = true;

    @Override
    protected List generateList(List inList) throws IOException, SQLException, DuplicatePatchNameException {
        List missingRollback = new LinkedList();
        List rollbacks = new LinkedList();
        StringBuilder sb = new StringBuilder("Patch list:\n");
        for(Patch p : inList) {
            getConfigurationEntry().getPatchParser().parse(p, getConfigurationEntry());
            sb.append('\t');
            if (p.getDbState() == AbstractPatch.DbState.COMMITTED) sb.append('*');
            if (p.getDbState() == AbstractPatch.DbState.IN_PROGRESS) sb.append('P');
            if (p.getDbState() == AbstractPatch.DbState.NOT_AVAILABLE) sb.append(' ');
            sb.append(' ').append(p.getName());
            for(int a=p.getName().length(); a




© 2015 - 2025 Weber Informatics LLC | Privacy Policy