summaryrefslogtreecommitdiffstats
path: root/org.eclipse.cdt.codan.core/src/org/eclipse/cdt/codan/core/param/IProblemPreferenceValue.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.cdt.codan.core/src/org/eclipse/cdt/codan/core/param/IProblemPreferenceValue.java')
-rw-r--r--org.eclipse.cdt.codan.core/src/org/eclipse/cdt/codan/core/param/IProblemPreferenceValue.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/org.eclipse.cdt.codan.core/src/org/eclipse/cdt/codan/core/param/IProblemPreferenceValue.java b/org.eclipse.cdt.codan.core/src/org/eclipse/cdt/codan/core/param/IProblemPreferenceValue.java
new file mode 100644
index 0000000..cbe9f4f
--- /dev/null
+++ b/org.eclipse.cdt.codan.core/src/org/eclipse/cdt/codan/core/param/IProblemPreferenceValue.java
@@ -0,0 +1,54 @@
+/*******************************************************************************
+ * Copyright (c) 2009,2010 QNX Software Systems
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * QNX Software Systems (Alena Laskavaia) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.cdt.codan.core.param;
+
+/**
+ * Value of the problem preference. If more than one it can be composite, i.e.
+ * map.Extend {@link AbstractProblemPreference} class
+ * to implement this interface.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IProblemPreferenceValue extends Cloneable {
+ /**
+ * Get value of preference.
+ *
+ * @return object that represents the value. Limited number of object types
+ * are allowed.
+ * @see IProblemPreferenceDescriptor.PreferenceType
+ */
+ Object getValue();
+
+ /**
+ * Set value of preference represented by this object.
+ *
+ * @param value
+ */
+ void setValue(Object value);
+
+ /**
+ * Export value in string representation required for storing in eclipse
+ * preferences.
+ *
+ * @return string representation of the value
+ */
+ String exportValue();
+
+ /**
+ * Import value from string into internal object state.
+ *
+ * @param str
+ * - string from preferences, previously exported by exportValue
+ * method.
+ */
+ void importValue(String str);
+}