mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-24 08:44:01 +02:00
[189274]provide import and export operations for profiles
https://bugs.eclipse.org/bugs/show_bug.cgi?id=189274
This commit is contained in:
parent
44f4f94af5
commit
f47e91b3af
4 changed files with 14 additions and 14 deletions
|
@ -23,11 +23,11 @@ import org.eclipse.core.runtime.jobs.Job;
|
||||||
import org.eclipse.rse.persistence.IRSEPersistenceProvider;
|
import org.eclipse.rse.persistence.IRSEPersistenceProvider;
|
||||||
import org.eclipse.rse.persistence.dom.RSEDOM;
|
import org.eclipse.rse.persistence.dom.RSEDOM;
|
||||||
|
|
||||||
class PFMetadataAnchor implements PFPersistenceAnchor {
|
class PFFileSystemAnchor implements PFPersistenceAnchor {
|
||||||
|
|
||||||
private File providerFolder = null;
|
private File providerFolder = null;
|
||||||
|
|
||||||
public PFMetadataAnchor(File providerFolder) {
|
public PFFileSystemAnchor(File providerFolder) {
|
||||||
this.providerFolder = providerFolder;
|
this.providerFolder = providerFolder;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ class PFMetadataAnchor implements PFPersistenceAnchor {
|
||||||
|
|
||||||
public PFPersistenceLocation getProfileLocation(String profileLocationName) {
|
public PFPersistenceLocation getProfileLocation(String profileLocationName) {
|
||||||
File profileFolder = getProfileFolder(profileLocationName);
|
File profileFolder = getProfileFolder(profileLocationName);
|
||||||
PFPersistenceLocation result = new PFMetadataLocation(profileFolder);
|
PFPersistenceLocation result = new PFFileSystemLocation(profileFolder);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@ class PFMetadataAnchor implements PFPersistenceAnchor {
|
||||||
* @see org.eclipse.rse.internal.persistence.PFPersistenceAnchor#makeSaveJob(org.eclipse.rse.persistence.dom.RSEDOM, org.eclipse.rse.persistence.IRSEPersistenceProvider)
|
* @see org.eclipse.rse.internal.persistence.PFPersistenceAnchor#makeSaveJob(org.eclipse.rse.persistence.dom.RSEDOM, org.eclipse.rse.persistence.IRSEPersistenceProvider)
|
||||||
*/
|
*/
|
||||||
public Job makeSaveJob(RSEDOM dom, IRSEPersistenceProvider provider) {
|
public Job makeSaveJob(RSEDOM dom, IRSEPersistenceProvider provider) {
|
||||||
return new PFMetatdataJob(dom, provider);
|
return new PFFileSystemJob(dom, provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
|
@ -35,7 +35,7 @@ import org.eclipse.rse.persistence.dom.RSEDOM;
|
||||||
* {@link RSECorePlugin#getThePersistenceManager()}. It is used to
|
* {@link RSECorePlugin#getThePersistenceManager()}. It is used to
|
||||||
* save a DOM to the workspace metadata area. A DOM corresponds to a profile.
|
* save a DOM to the workspace metadata area. A DOM corresponds to a profile.
|
||||||
*/
|
*/
|
||||||
public class PFMetatdataJob extends Job {
|
public class PFFileSystemJob extends Job {
|
||||||
|
|
||||||
private static Object jobFamily = RSECorePlugin.getThePersistenceManager();
|
private static Object jobFamily = RSECorePlugin.getThePersistenceManager();
|
||||||
|
|
||||||
|
@ -51,7 +51,7 @@ public class PFMetatdataJob extends Job {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public PFMetatdataJob(RSEDOM dom, IRSEPersistenceProvider provider) {
|
public PFFileSystemJob(RSEDOM dom, IRSEPersistenceProvider provider) {
|
||||||
super("Saving Profile"); //$NON-NLS-1$
|
super("Saving Profile"); //$NON-NLS-1$
|
||||||
String title = NLS.bind(RSECoreMessages.SaveRSEDOMJob_SavingProfileJobName, dom.getName());
|
String title = NLS.bind(RSECoreMessages.SaveRSEDOMJob_SavingProfileJobName, dom.getName());
|
||||||
setName(title);
|
setName(title);
|
|
@ -25,11 +25,11 @@ import java.util.Set;
|
||||||
|
|
||||||
import org.eclipse.rse.core.RSECorePlugin;
|
import org.eclipse.rse.core.RSECorePlugin;
|
||||||
|
|
||||||
class PFMetadataLocation implements PFPersistenceLocation {
|
class PFFileSystemLocation implements PFPersistenceLocation {
|
||||||
|
|
||||||
private File _baseFolder;
|
private File _baseFolder;
|
||||||
|
|
||||||
public PFMetadataLocation(File baseFolder) {
|
public PFFileSystemLocation(File baseFolder) {
|
||||||
_baseFolder = baseFolder;
|
_baseFolder = baseFolder;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ class PFMetadataLocation implements PFPersistenceLocation {
|
||||||
|
|
||||||
public PFPersistenceLocation getChild(String childName) {
|
public PFPersistenceLocation getChild(String childName) {
|
||||||
File childFolder = new File(_baseFolder, childName);
|
File childFolder = new File(_baseFolder, childName);
|
||||||
return new PFMetadataLocation(childFolder);
|
return new PFFileSystemLocation(childFolder);
|
||||||
}
|
}
|
||||||
|
|
||||||
public PFPersistenceLocation[] getChildren() {
|
public PFPersistenceLocation[] getChildren() {
|
||||||
|
@ -54,7 +54,7 @@ class PFMetadataLocation implements PFPersistenceLocation {
|
||||||
for (int i = 0; i < members.length; i++) {
|
for (int i = 0; i < members.length; i++) {
|
||||||
File member = members[i];
|
File member = members[i];
|
||||||
if (member.isDirectory()) {
|
if (member.isDirectory()) {
|
||||||
PFPersistenceLocation child = new PFMetadataLocation(member);
|
PFPersistenceLocation child = new PFFileSystemLocation(member);
|
||||||
children.add(child);
|
children.add(child);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -193,7 +193,7 @@ public class PropertyFileProvider implements IRSEPersistenceProvider, IRSEImport
|
||||||
* @see org.eclipse.rse.internal.persistence.IRSEImportExportProvider#exportRSEDOM(java.io.File, org.eclipse.rse.persistence.dom.RSEDOM, org.eclipse.core.runtime.IProgressMonitor)
|
* @see org.eclipse.rse.internal.persistence.IRSEImportExportProvider#exportRSEDOM(java.io.File, org.eclipse.rse.persistence.dom.RSEDOM, org.eclipse.core.runtime.IProgressMonitor)
|
||||||
*/
|
*/
|
||||||
public boolean exportRSEDOM(File folder, RSEDOM dom, IProgressMonitor monitor) {
|
public boolean exportRSEDOM(File folder, RSEDOM dom, IProgressMonitor monitor) {
|
||||||
PFPersistenceAnchor anchor = new PFMetadataAnchor(folder);
|
PFPersistenceAnchor anchor = new PFFileSystemAnchor(folder);
|
||||||
String name = "DOM"; //$NON-NLS-1$
|
String name = "DOM"; //$NON-NLS-1$
|
||||||
boolean saved = save(dom, anchor, name, monitor);
|
boolean saved = save(dom, anchor, name, monitor);
|
||||||
return saved;
|
return saved;
|
||||||
|
@ -203,7 +203,7 @@ public class PropertyFileProvider implements IRSEPersistenceProvider, IRSEImport
|
||||||
* @see org.eclipse.rse.internal.persistence.IRSEImportExportProvider#importRSEDOM(java.io.File, org.eclipse.core.runtime.IProgressMonitor)
|
* @see org.eclipse.rse.internal.persistence.IRSEImportExportProvider#importRSEDOM(java.io.File, org.eclipse.core.runtime.IProgressMonitor)
|
||||||
*/
|
*/
|
||||||
public RSEDOM importRSEDOM(File folder, IProgressMonitor monitor) {
|
public RSEDOM importRSEDOM(File folder, IProgressMonitor monitor) {
|
||||||
PFPersistenceAnchor anchor = new PFMetadataAnchor(folder);
|
PFPersistenceAnchor anchor = new PFFileSystemAnchor(folder);
|
||||||
String name = "DOM"; //$NON-NLS-1$
|
String name = "DOM"; //$NON-NLS-1$
|
||||||
RSEDOM dom = load(anchor, name, monitor);
|
RSEDOM dom = load(anchor, name, monitor);
|
||||||
return dom;
|
return dom;
|
||||||
|
@ -239,11 +239,11 @@ public class PropertyFileProvider implements IRSEPersistenceProvider, IRSEImport
|
||||||
anchor = new PFWorkspaceAnchor();
|
anchor = new PFWorkspaceAnchor();
|
||||||
} else if (location.equals(PV_LOCATION_METADATA)) {
|
} else if (location.equals(PV_LOCATION_METADATA)) {
|
||||||
File profilesFolder = getProfilesFolder();
|
File profilesFolder = getProfilesFolder();
|
||||||
anchor = new PFMetadataAnchor(profilesFolder);
|
anchor = new PFFileSystemAnchor(profilesFolder);
|
||||||
} else {
|
} else {
|
||||||
// if no explicit location is specified we assume the metadata location
|
// if no explicit location is specified we assume the metadata location
|
||||||
File profilesFolder = getProfilesFolder();
|
File profilesFolder = getProfilesFolder();
|
||||||
anchor = new PFMetadataAnchor(profilesFolder);
|
anchor = new PFFileSystemAnchor(profilesFolder);
|
||||||
}
|
}
|
||||||
return anchor;
|
return anchor;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue