Skip to content

Commit f144858

Browse files
authored
XWIKI-23160: Move XWikiPreferences meta field to a templates (#4137)
Makes the xar selection more generic to also support older versions.
1 parent 58a9ee5 commit f144858

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

xwiki-platform-distribution/xwiki-platform-distribution-migrations/src/main/java/org/xwiki/migrations/internal/R170400000XWIKI23160DataMigration.java

+13-3
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import java.io.IOException;
2323
import java.util.Collection;
2424
import java.util.Locale;
25-
import java.util.Objects;
25+
import java.util.Set;
2626

2727
import javax.inject.Inject;
2828
import javax.inject.Named;
@@ -70,8 +70,19 @@
7070
@Singleton
7171
public class R170400000XWIKI23160DataMigration extends AbstractHibernateDataMigration
7272
{
73+
7374
private static final String META_FIELD = "meta";
7475

76+
/**
77+
* The set of expected ids for the default distribution xar files containing {@code XWiki.XWikiPreferences}.
78+
*/
79+
private static final Set<String> DISTRIBUTION_XAR_IDS = Set.of(
80+
// Id in recent distributions
81+
"org.xwiki.platform:xwiki-platform-distribution-ui-base",
82+
// Id in older distributions
83+
"org.xwiki.platform:xwiki-platform-distribution-flavor"
84+
);
85+
7586
@Inject
7687
private Packager packager;
7788

@@ -138,8 +149,7 @@ private XWikiDocument loadFromXar(DocumentReference xwikiPreferencesDocumentRefe
138149
Collection<XarInstalledExtension> xarInstalledExtensions =
139150
xarInstalledExtensionRepository.getXarInstalledExtensions(xwikiPreferencesDocumentReference);
140151
XarInstalledExtension xarInstalledExtension = xarInstalledExtensions.stream()
141-
.filter(
142-
it -> Objects.equals(it.getId().getId(), "org.xwiki.platform:xwiki-platform-distribution-ui-base"))
152+
.filter(it -> DISTRIBUTION_XAR_IDS.contains(it.getId().getId()))
143153
.findFirst()
144154
.orElse(null);
145155
if (xarInstalledExtension != null) {

0 commit comments

Comments
 (0)