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

io.codemodder.plugins.maven.operator.Command Maven / Gradle / Ivy

package io.codemodder.plugins.maven.operator;

import java.io.IOException;
import java.net.URISyntaxException;
import javax.xml.stream.XMLStreamException;

/** Represents a Command in a Chain of Responsibility Pattern */
interface Command {
  /**
   * Given a context, performs an operation
   *
   * @param pm Context (Project Model) to use
   * @return true if the execution was successful *AND* the chain must end
   */
  boolean execute(ProjectModel pm) throws URISyntaxException, IOException, XMLStreamException;

  /**
   * Post Processing, implementing a Filter Pattern.
   *
   * @param c ProjectModel for post-processing.
   * @return true if post-processing was successful.
   */
  boolean postProcess(ProjectModel c) throws XMLStreamException;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy