From 1541cd329ca4b4366287b919b8545e594ce7c343 Mon Sep 17 00:00:00 2001 From: Ross Allan Date: Wed, 10 Jul 2013 22:58:24 +0100 Subject: [PATCH] Add support for multi class patches Signed-off-by: Ross Allan --- .../nallar/tickthreading/patcher/PatchManager.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/common/nallar/tickthreading/patcher/PatchManager.java b/src/common/nallar/tickthreading/patcher/PatchManager.java index cadd7109..81ffdf4e 100644 --- a/src/common/nallar/tickthreading/patcher/PatchManager.java +++ b/src/common/nallar/tickthreading/patcher/PatchManager.java @@ -299,6 +299,20 @@ public void save(File file) throws TransformerException { transformer.transform(input, output); } + private void splitMultiClassPatches() { + for (Element classElement : DomUtil.getElementsByTag(configDocument.getDocumentElement(), "class")) { + String classNames = classElement.getAttribute("id"); + if (classNames.contains(",")) { + for (String className : CollectionsUtil.split(classNames.trim())) { + Element newClassElement = (Element) classElement.cloneNode(true); + newClassElement.setAttribute("id", className); + classElement.getParentNode().insertBefore(newClassElement, classElement); + } + classElement.getParentNode().removeChild(classElement); + } + } + } + public class PatchMethodDescriptor { public final String name; public final List requiredAttributes;