Cq60UIContentUpgrade.java
2.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/*
* Decompiled with CFR 0_118.
*
* Could not load the following classes:
* com.day.cq.commons.jcr.JcrUtil
* javax.jcr.Node
* javax.jcr.PathNotFoundException
* javax.jcr.Property
* javax.jcr.RepositoryException
* javax.jcr.Session
* org.slf4j.Logger
* org.slf4j.LoggerFactory
*/
package com.day.cq.compat.codeupgrade.impl.cq60;
import com.day.cq.commons.jcr.JcrUtil;
import com.day.cq.compat.codeupgrade.internal.api.ProgressInfoProvider;
import javax.jcr.Node;
import javax.jcr.PathNotFoundException;
import javax.jcr.Property;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Cq60UIContentUpgrade
implements ProgressInfoProvider {
private static final Logger log = LoggerFactory.getLogger(Cq60UIContentUpgrade.class);
public static final String CONTENT_FILE_NAME = "/cq60-ui-content-upgrade.json";
public static final String AUTHORING_MODE_CONFIG_NAME = "com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl";
public static final String AUTHORING_MODE_SERVICE_CONFIG_PATH = "/libs/system/config/com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl";
private String progressInfo = "No info yet";
@Override
public String getProgressInfo() {
return this.progressInfo;
}
public void doUpgrade(Session s) {
try {
this.progressInfo = "Updating Authoring UI config.";
if (s.itemExists("/libs/system/config/com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl.config")) {
s.removeItem("/libs/system/config/com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl.config");
s.save();
}
Node uiConfigNode = null;
try {
uiConfigNode = s.getNode("/libs/system/config/com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl");
}
catch (PathNotFoundException e) {
Node configNode = JcrUtil.createPath((String)"/libs/system/config", (String)"nt:unstructured", (Session)s);
uiConfigNode = configNode.addNode("com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl", "sling:OsgiConfig");
}
if (uiConfigNode == null) {
throw new RepositoryException("Could not access /libs/system/config/com.day.cq.wcm.core.impl.AuthoringUIModeServiceImpl");
}
uiConfigNode.setProperty("authoringUIModeService.default", "CLASSIC");
s.save();
this.progressInfo = "Update Authoring UI config complete.";
}
catch (RepositoryException e) {
log.error("Could not Update Authoring UI config.", (Throwable)e);
this.progressInfo = "Error";
}
}
}