16 package org.zorbaxquery.api.xqj;
18 import java.util.ArrayList;
19 import java.util.Collection;
20 import javax.xml.xquery.XQException;
21 import javax.xml.xquery.XQItem;
22 import javax.xml.xquery.XQSequence;
23 import org.zorbaxquery.api.CollectionManager;
32 private boolean closed =
false;
33 private CollectionManager collectionManager = null;
34 private Collection<XQSequence> sequences =
new ArrayList<XQSequence>();
35 private Collection<ZorbaXQCollection> collections =
new ArrayList<ZorbaXQCollection>();
38 collectionManager = cm;
47 public void close() throws XQException {
48 for (XQSequence exp : sequences ){
54 if (collectionManager!=null) {
55 collectionManager.delete();
80 isClosedXQException();
81 XQSequence result =
new org.zorbaxquery.api.xqj.ZorbaXQSequence(collectionManager.availableCollections());
82 sequences.add(result);
95 isClosedXQException();
96 collectionManager.createCollection(((org.zorbaxquery.api.xqj.ZorbaXQItem)aName).getZorbaItem());
107 isClosedXQException();
108 collectionManager.deleteCollection(((org.zorbaxquery.api.xqj.ZorbaXQItem)aName).getZorbaItem());
121 isClosedXQException();
123 collections.add(result);
140 isClosedXQException();
141 return collectionManager.isAvailableCollection( ((org.zorbaxquery.api.xqj.ZorbaXQItem)aName).getZorbaItem() );
144 private void isClosedXQException() throws XQException {
146 throw new XQException(
"CollectionManager is closed");