Lines 26-31
Link Here
|
26 |
import org.eclipse.osgi.service.datalocation.*; |
26 |
import org.eclipse.osgi.service.datalocation.*; |
27 |
import org.eclipse.osgi.util.NLS; |
27 |
import org.eclipse.osgi.util.NLS; |
28 |
import org.eclipse.update.configurator.*; |
28 |
import org.eclipse.update.configurator.*; |
|
|
29 |
import org.eclipse.update.configurator.IPlatformConfiguration.ISitePolicy; |
29 |
import org.w3c.dom.*; |
30 |
import org.w3c.dom.*; |
30 |
|
31 |
|
31 |
/** |
32 |
/** |
Lines 58-63
Link Here
|
58 |
//PAL nio optional |
59 |
//PAL nio optional |
59 |
//private FileLock lock; |
60 |
//private FileLock lock; |
60 |
private Locker lock = null; |
61 |
private Locker lock = null; |
|
|
62 |
private static int defaultPolicy = DEFAULT_POLICY_TYPE; |
61 |
private static boolean checkNio = false; |
63 |
private static boolean checkNio = false; |
62 |
private static boolean useNio; |
64 |
private static boolean useNio; |
63 |
|
65 |
|
Lines 85-90
Link Here
|
85 |
|
87 |
|
86 |
// initialize configuration |
88 |
// initialize configuration |
87 |
initializeCurrent(platformConfigLocation); |
89 |
initializeCurrent(platformConfigLocation); |
|
|
90 |
if(config != null) |
91 |
setDefaultPolicy(); |
88 |
|
92 |
|
89 |
// Detect external links. These are "soft link" to additional sites. The link |
93 |
// Detect external links. These are "soft link" to additional sites. The link |
90 |
// files are usually provided by external installation programs. They are located |
94 |
// files are usually provided by external installation programs. They are located |
Lines 113-118
Link Here
|
113 |
initialize(url); |
117 |
initialize(url); |
114 |
} |
118 |
} |
115 |
|
119 |
|
|
|
120 |
private void setDefaultPolicy() { |
121 |
// Assumption: If the configuration that we initialize with |
122 |
// has a MANAGED_ONLY policy, then all sites should have default policy |
123 |
// of MANAGED_ONLY. |
124 |
ISiteEntry[] sentries = getConfiguredSites(); |
125 |
if(sentries != null && sentries.length >0){ |
126 |
int policyType = sentries[0].getSitePolicy().getType(); |
127 |
if(policyType == ISitePolicy.MANAGED_ONLY){ |
128 |
defaultPolicy = policyType; |
129 |
} |
130 |
} |
131 |
} |
132 |
|
133 |
public static int getDefaultPolicy(){ |
134 |
return defaultPolicy; |
135 |
} |
136 |
|
116 |
/* |
137 |
/* |
117 |
* @see IPlatformConfiguration#createSiteEntry(URL, ISitePolicy) |
138 |
* @see IPlatformConfiguration#createSiteEntry(URL, ISitePolicy) |
118 |
*/ |
139 |
*/ |
Lines 755-761
Link Here
|
755 |
} |
776 |
} |
756 |
private ISiteEntry getRootSite() { |
777 |
private ISiteEntry getRootSite() { |
757 |
// create default site entry for the root |
778 |
// create default site entry for the root |
758 |
ISitePolicy defaultPolicy = createSitePolicy(DEFAULT_POLICY_TYPE, DEFAULT_POLICY_LIST); |
779 |
ISitePolicy defaultPolicy = createSitePolicy(getDefaultPolicy(), DEFAULT_POLICY_LIST); |
759 |
URL siteURL = null; |
780 |
URL siteURL = null; |
760 |
try { |
781 |
try { |
761 |
siteURL = new URL("platform:/base/"); //$NON-NLS-1$ // try using platform-relative URL |
782 |
siteURL = new URL("platform:/base/"); //$NON-NLS-1$ // try using platform-relative URL |
Lines 934-940
Link Here
|
934 |
SiteEntry linkSite = (SiteEntry) externalLinkSites.get(siteURL); |
955 |
SiteEntry linkSite = (SiteEntry) externalLinkSites.get(siteURL); |
935 |
if (linkSite == null) { |
956 |
if (linkSite == null) { |
936 |
// this is a link to a new target so create site for it |
957 |
// this is a link to a new target so create site for it |
937 |
ISitePolicy linkSitePolicy = createSitePolicy(DEFAULT_POLICY_TYPE, DEFAULT_POLICY_LIST); |
958 |
ISitePolicy linkSitePolicy = createSitePolicy(getDefaultPolicy(), DEFAULT_POLICY_LIST); |
938 |
linkSite = (SiteEntry) createSiteEntry(siteURL, linkSitePolicy); |
959 |
linkSite = (SiteEntry) createSiteEntry(siteURL, linkSitePolicy); |
939 |
} |
960 |
} |
940 |
// update site entry if needed |
961 |
// update site entry if needed |