Package org.openrefine.operations.cell
Class KeyValueColumnizeOperation
- java.lang.Object
-
- org.openrefine.operations.cell.KeyValueColumnizeOperation
-
- All Implemented Interfaces:
Operation
public class KeyValueColumnizeOperation extends Object implements Operation
Reshapes a table which contains key and value columns, such that the repeating contents in the key column become new column names, and the contents of the value column are spread in the new columns.
-
-
Field Summary
Fields Modifier and Type Field Description protected String
_keyColumnName
protected String
_noteColumnName
protected String
_valueColumnName
-
Constructor Summary
Constructors Constructor Description KeyValueColumnizeOperation(String keyColumnName, String valueColumnName, String noteColumnName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ChangeResult
apply(Grid projectState, ChangeContext context)
Derives the new grid state from the current grid state.String
getDescription()
A short human-readable description of what this operation does.String
getKeyColumnName()
String
getNoteColumnName()
String
getValueColumnName()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.openrefine.operations.Operation
getOperationId, isReproducible
-
-
-
-
Method Detail
-
apply
public ChangeResult apply(Grid projectState, ChangeContext context) throws OperationException
Description copied from interface:Operation
Derives the new grid state from the current grid state. Executing this method should be quick (even on large datasets) since it is expected to just derive the new grid from the existing one without actually executing any expensive computation. Long-running computations should rather go in the derivation of aChangeData
which will be fetched asynchronously.- Specified by:
apply
in interfaceOperation
- Parameters:
projectState
- the state of the grid before the change- Returns:
- an object which bundles up various pieces of information produced by the operation: primarily, the new grid after applying the operation. This object can be subclassed to expose more information, which should be serializable with Jackson so that it reaches the frontend.
- Throws:
OperationException
- when the change cannot be applied to the given grid
-
getKeyColumnName
public String getKeyColumnName()
-
getValueColumnName
public String getValueColumnName()
-
getNoteColumnName
public String getNoteColumnName()
-
getDescription
public String getDescription()
Description copied from interface:Operation
A short human-readable description of what this operation does.- Specified by:
getDescription
in interfaceOperation
-
-