Package hu.sztaki.ilab.longneck.process.block

Source Code of hu.sztaki.ilab.longneck.process.block.SetNull

package hu.sztaki.ilab.longneck.process.block;

import hu.sztaki.ilab.longneck.Field;
import hu.sztaki.ilab.longneck.Record;
import hu.sztaki.ilab.longneck.process.VariableSpace;

/**
* Sets the a field to null.
*
* @author Péter Molnár <molnarp@sztaki.mta.hu>
*/
public class SetNull extends AbstractAtomicBlock {

    @Override
    public void apply(Record record, VariableSpace parentScope) {
        for (String fname : applyTo) {
            try {
                BlockUtils.setValue(fname, null, record, parentScope);
            } catch (NullPointerException ex) {
                record.add(new Field(fname));
                record.get(fname).setValue(null);
            }
        }
    }

    @Override
    public SetNull clone() {
        return (SetNull) super.clone();
    }
}
TOP

Related Classes of hu.sztaki.ilab.longneck.process.block.SetNull

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.