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

hudson.scm.ChangeLogEntry Maven / Gradle / Ivy

The newest version!
/*
 * The MIT License
 *
 * Copyright (c) 2011, Oracle Corporation, Nikita Levyankov
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
package hudson.scm;

import hudson.model.User;
import java.util.Collection;

/**
 * Interface that represents entry from change log.
 * Note: this interface is gonna be used in email-ext plugin and some other plugins.
 * So, changing methods signatures could broke existing logic.
 * 

*

* Date: 5/23/11 * * @author Nikita Levyankov */ interface ChangeLogEntry { ChangeLogSet getParent(); /** * Gets the text fully marked up by {@link ChangeLogAnnotator}. * * @return annotated message. */ String getMsgAnnotated(); /** * Gets the "commit message". *

* The exact definition depends on the individual SCM implementation. * * @return Can be empty but never null. */ String getMsg(); /** * Returns a set of paths in the workspace that was * affected by this change. *

* Contains string like 'foo/bar/zot'. No leading/trailing '/', * and separator must be normalized to '/'. * * @return never null. */ Collection getAffectedPaths(); /** * The user who made this change. * * @return never null. */ User getAuthor(); /** * Return string representation of user. * * @return name or id. */ String getUser(); /** * Returns revision version. * Some VCS's use string representation of revision number, for ex. git or cvs; * perforce, svn - use numeric values for revisions * * @return revision version. */ String getCurrentRevision(); /** * Returns a set of paths in the workspace that was * affected by this change. *

* Noted: since this is a new interface, some of the SCMs may not have * implemented this interface. The default implementation for this * interface is throw UnsupportedOperationException * * @return AffectedFile never null. * @since 2.0.1 */ Collection getAffectedFiles(); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy