X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/overlaypages/PropertyStore.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/overlaypages/PropertyStore.java deleted file mode 100644 index 00572e8..0000000 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/overlaypages/PropertyStore.java +++ /dev/null @@ -1,234 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2003 Berthold Daum. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Common Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/cpl-v10.html - * - * Contributors: - * Berthold Daum - *******************************************************************************/ - -package net.sourceforge.phpeclipse.overlaypages; - -import java.io.IOException; -import java.io.OutputStream; - -import org.eclipse.core.resources.IResource; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.QualifiedName; -import org.eclipse.jface.preference.IPreferenceStore; -import org.eclipse.jface.preference.PreferenceStore; - -/** - * @author Berthold Daum - * - */ -public class PropertyStore extends PreferenceStore { - - private IResource resource; - private IPreferenceStore workbenchStore; - private String pageId; - private boolean inserting = false; - - public PropertyStore( - IResource resource, - IPreferenceStore workbenchStore, - String pageId) { - this.resource = resource; - this.workbenchStore = workbenchStore; - this.pageId = pageId; - } - - /*** Write modified values back to properties ***/ - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPersistentPreferenceStore#save() - */ - public void save() throws IOException { - writeProperties(); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.PreferenceStore#save(java.io.OutputStream, java.lang.String) - */ - public void save(OutputStream out, String header) throws IOException { - writeProperties(); - } - - /** - * Writes modified preferences into resource properties. - */ - private void writeProperties() throws IOException { - String[] preferences = super.preferenceNames(); - for (int i = 0; i < preferences.length; i++) { - String name = preferences[i]; - try { - setProperty(name, getString(name)); - } catch (CoreException e) { - throw new IOException(Messages.getString("PropertyStore.Cannot_write_resource_property") + name); //$NON-NLS-1$ - } - } - } - - /** - * Convenience method to set a property - * @param name - the preference name - * @param value - the property value or null to delete the property - * @throws CoreException - */ - private void setProperty(String name, String value) throws CoreException { - resource.setPersistentProperty(new QualifiedName(pageId, name), value); - } - - /*** Get default values (Delegate to workbench store) ***/ - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultBoolean(java.lang.String) - */ - public boolean getDefaultBoolean(String name) { - return workbenchStore.getDefaultBoolean(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultDouble(java.lang.String) - */ - public double getDefaultDouble(String name) { - return workbenchStore.getDefaultDouble(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultFloat(java.lang.String) - */ - public float getDefaultFloat(String name) { - return workbenchStore.getDefaultFloat(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultInt(java.lang.String) - */ - public int getDefaultInt(String name) { - return workbenchStore.getDefaultInt(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultLong(java.lang.String) - */ - public long getDefaultLong(String name) { - return workbenchStore.getDefaultLong(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getDefaultString(java.lang.String) - */ - public String getDefaultString(String name) { - return workbenchStore.getDefaultString(name); - } - - /*** Get property values ***/ - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getBoolean(java.lang.String) - */ - public boolean getBoolean(String name) { - insertValue(name); - return super.getBoolean(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getDouble(java.lang.String) - */ - public double getDouble(String name) { - insertValue(name); - return super.getDouble(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getFloat(java.lang.String) - */ - public float getFloat(String name) { - insertValue(name); - return super.getFloat(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getInt(java.lang.String) - */ - public int getInt(String name) { - insertValue(name); - return super.getInt(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getLong(java.lang.String) - */ - public long getLong(String name) { - insertValue(name); - return super.getLong(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#getString(java.lang.String) - */ - public String getString(String name) { - insertValue(name); - return super.getString(name); - } - - /** - * @param name - */ - private synchronized void insertValue(String name) { - if (inserting) - return; - if (super.contains(name)) - return; - inserting = true; - String prop = null; - try { - prop = getProperty(name); - } catch (CoreException e) { - } - if (prop == null) - prop = workbenchStore.getString(name); - if (prop != null) - setValue(name, prop); - inserting = false; - } - - /** - * Convenience method to fetch a property - * @param name - the preference name - * @return - the property value - * @throws CoreException - */ - private String getProperty(String name) throws CoreException { - return resource.getPersistentProperty(new QualifiedName(pageId, name)); - } - - /*** Misc ***/ - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#contains(java.lang.String) - */ - public boolean contains(String name) { - return workbenchStore.contains(name); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#setToDefault(java.lang.String) - */ - public void setToDefault(String name) { - setValue(name, getDefaultString(name)); - } - - /* (non-Javadoc) - * @see org.eclipse.jface.preference.IPreferenceStore#isDefault(java.lang.String) - */ - public boolean isDefault(String name) { - String defaultValue = getDefaultString(name); - if (defaultValue == null) return false; - return defaultValue.equals(getString(name)); - } - -}