org.basex.query.up
Class Updates

java.lang.Object
  extended by org.basex.query.up.Updates

public final class Updates
extends Object

Holds all update operations and primitives a snapshot contains, checks constraints and finally executes the updates.

Author:
Workgroup DBIS, University of Konstanz 2005-10, ISC License, Lukas Kircher

Constructor Summary
Updates(boolean transform)
          Constructor.
 
Method Summary
 void add(UpdatePrimitive p, QueryContext ctx)
          Adds an update primitive to the corresponding primitive list.
 void addDataReference(Data d)
          Adds a data reference to the reference list.
 void apply()
          Checks constraints and applies all update primitives to the databases if no constraints are hurt.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Updates

public Updates(boolean transform)
Constructor.

Parameters:
transform - update operations are triggered by a transform expression
Method Detail

addDataReference

public void addDataReference(Data d)
Adds a data reference to the reference list.

Parameters:
d - data reference to add

add

public void add(UpdatePrimitive p,
                QueryContext ctx)
         throws QueryException
Adds an update primitive to the corresponding primitive list. Update primitives with fragments as target nodes are treated differently, because they don't effect any existing databases. They may not hurt any constraints however.

Parameters:
p - primitive to add
ctx - query context
Throws:
QueryException - query exception

apply

public void apply()
           throws QueryException
Checks constraints and applies all update primitives to the databases if no constraints are hurt. XQueryUP specification 3.2.2

Throws:
QueryException - query exception