001
014
015 package com.liferay.portal.kernel.patcher;
016
017 import aQute.bnd.annotation.ProviderType;
018
019 import java.io.File;
020
021 import java.util.Properties;
022
023
028 @ProviderType
029 public interface Patcher {
030
031 public static final String PATCHER_PROPERTIES = "patcher.properties";
032
033 public static final String PATCHER_SERVICE_PROPERTIES =
034 "patcher-service.properties";
035
036 public static final String PROPERTY_FIXED_ISSUES = "fixed.issues";
037
038 public static final String PROPERTY_INSTALLED_PATCHES = "installed.patches";
039
040 public static final String PROPERTY_PATCH_DIRECTORY = "patch.directory";
041
042 public static final String PROPERTY_PATCH_LEVELS = "patch.levels";
043
044 public static final String PROPERTY_PATCHING_TOOL_VERSION =
045 "patching.tool.version";
046
047 public static final String PROPERTY_PATCHING_TOOL_VERSION_DISPLAY_NAME =
048 "patching.tool.version.display.name";
049
050 public boolean applyPatch(File patchFile);
051
052 public String[] getFixedIssues();
053
054 public String[] getInstalledPatches();
055
056 public File getPatchDirectory();
057
058 public int getPatchingToolVersion();
059
060 public String getPatchingToolVersionDisplayName();
061
062 public String[] getPatchLevels();
063
064 public Properties getProperties();
065
066 public boolean hasInconsistentPatchLevels();
067
068 public boolean isConfigured();
069
070 public void verifyPatchLevels() throws PatchInconsistencyException;
071
072 }