-/*******************************************************************************\r
- * Copyright (c) 2010 Association for Decentralized Information Management in\r
- * Industry THTH ry.\r
- * All rights reserved. This program and the accompanying materials\r
- * are made available under the terms of the Eclipse Public License v1.0\r
- * which accompanies this distribution, and is available at\r
- * http://www.eclipse.org/legal/epl-v10.html\r
- *\r
- * Contributors:\r
- * VTT Technical Research Centre of Finland - initial API and implementation\r
- *******************************************************************************/\r
+/*******************************************************************************
+ * Copyright (c) 2010 Association for Decentralized Information Management in
+ * Industry THTH ry.
+ * 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:
+ * VTT Technical Research Centre of Finland - initial API and implementation
+ *******************************************************************************/
package org.simantics.databoard.binding.impl;
-import java.lang.reflect.Array;\r
-import java.util.IdentityHashMap;\r
-import java.util.Iterator;\r
-import java.util.Set;\r
-\r
-import org.simantics.databoard.binding.ArrayBinding;\r
-import org.simantics.databoard.binding.Binding;\r
-import org.simantics.databoard.binding.StringBinding;\r
-import org.simantics.databoard.binding.error.BindingException;\r
-import org.simantics.databoard.binding.error.UnsupportedOperationException;\r
-import org.simantics.databoard.type.ArrayType;\r
-import org.simantics.databoard.type.StringType;\r
-import org.simantics.databoard.util.IdentityPair;\r
+import java.lang.reflect.Array;
+import java.util.IdentityHashMap;
+import java.util.Iterator;
+import java.util.Set;
+
+import org.simantics.databoard.binding.ArrayBinding;
+import org.simantics.databoard.binding.Binding;
+import org.simantics.databoard.binding.StringBinding;
+import org.simantics.databoard.binding.error.BindingException;
+import org.simantics.databoard.binding.error.UnsupportedOperationException;
+import org.simantics.databoard.type.ArrayType;
+import org.simantics.databoard.type.StringType;
+import org.simantics.databoard.util.IdentityPair;
/**
* Binds String[] type to String[] class.
*/
public final class StringArrayBinding extends ArrayBinding {
- public static StringArrayBinding createFrom(ArrayType type)\r
- {\r
- return new StringArrayBinding(type, new StringBindingDefault((StringType) type.componentType));\r
- }\r
-\r
- public StringArrayBinding(ArrayType type, Binding componentBinding)\r
- {\r
- super(type, componentBinding);\r
- }\r
-\r
+ public static StringArrayBinding createFrom(ArrayType type)
+ {
+ return new StringArrayBinding(type, new StringBindingDefault((StringType) type.componentType));
+ }
+
+ public StringArrayBinding(ArrayType type, Binding componentBinding)
+ {
+ super(type, componentBinding);
+ }
+
@Override
public Object create() {
return new String[0];
array[i] = (String)values.next();
return array;
}
- \r
- @Override\r
- public void readFrom(Binding srcBinding, Object src, Object dst)\r
- throws BindingException {\r
- // Src Binding\r
- ArrayBinding sb = (ArrayBinding) srcBinding;\r
- // Src Component Binding\r
- StringBinding scb = (StringBinding) sb.getComponentBinding();\r
- \r
- String[] d = (String[]) dst;\r
- if (d.length != sb.size(src)) throw new BindingException("String[] is length immutable");\r
- \r
- for (int i=0; i<d.length; i++) {\r
- d[i] = scb.getValue( sb.get(src, i) );\r
- }\r
- } \r
+
+ @Override
+ public void readFrom(Binding srcBinding, Object src, Object dst)
+ throws BindingException {
+ // Src Binding
+ ArrayBinding sb = (ArrayBinding) srcBinding;
+ // Src Component Binding
+ StringBinding scb = (StringBinding) sb.getComponentBinding();
+
+ String[] d = (String[]) dst;
+ if (d.length != sb.size(src)) throw new BindingException("String[] is length immutable");
+
+ for (int i=0; i<d.length; i++) {
+ d[i] = scb.getValue( sb.get(src, i) );
+ }
+ }
/**
* Create an array object.
@Override
public void remove(Object array, int index, int count) throws BindingException {
throw new UnsupportedOperationException();
- }\r
- \r
- @Override\r
- public void setSize(Object array, int newSize) throws BindingException {\r
- int oldSize = Array.getLength(array);\r
- if (oldSize==newSize) return;\r
- throw new BindingException("String[] is length immutable");\r
- } \r
+ }
+
+ @Override
+ public void setSize(Object array, int newSize) throws BindingException {
+ int oldSize = Array.getLength(array);
+ if (oldSize==newSize) return;
+ throw new BindingException("String[] is length immutable");
+ }
- @Override\r
- public boolean isResizable() {\r
- return false;\r
- }\r
+ @Override
+ public boolean isResizable() {
+ return false;
+ }
}