Main Page
Namespaces
Classes
Files
Examples
File List
File Members
include
xqilla
context
UpdateFactory.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2001-2008
3
* DecisionSoft Limited. All rights reserved.
4
* Copyright (c) 2004-2008
5
* Oracle. All rights reserved.
6
*
7
* Licensed under the Apache License, Version 2.0 (the "License");
8
* you may not use this file except in compliance with the License.
9
* You may obtain a copy of the License at
10
*
11
* http://www.apache.org/licenses/LICENSE-2.0
12
*
13
* Unless required by applicable law or agreed to in writing, software
14
* distributed under the License is distributed on an "AS IS" BASIS,
15
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
* See the License for the specific language governing permissions and
17
* limitations under the License.
18
*
19
* $Id$
20
*/
21
22
#ifndef _UPDATEFACTORY_HPP
23
#define _UPDATEFACTORY_HPP
24
25
#include <xqilla/framework/XQillaExport.hpp>
26
#include <
xqilla/schema/DocumentCache.hpp
>
27
28
#include <
xercesc/util/XMemory.hpp
>
29
30
class
PendingUpdateList;
31
class
PendingUpdate;
32
class
DynamicContext
;
33
34
class
XQILLA_API
UpdateFactory
:
public
XERCES_CPP_NAMESPACE_QUALIFIER XMemory
35
{
36
public
:
37
virtual
~UpdateFactory
() {}
38
39
virtual
void
applyUpdates(
const
PendingUpdateList &pul,
DynamicContext
*context,
DocumentCache::ValidationMode
valMode);
40
virtual
void
checkUpdates
(
const
PendingUpdateList &pul,
DynamicContext
*context,
DocumentCache::ValidationMode
valMode) {}
41
42
virtual
void
applyPut(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
43
virtual
void
applyInsertInto(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
44
virtual
void
applyInsertAttributes(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
45
virtual
void
applyReplaceValue(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
46
virtual
void
applyRename(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
47
virtual
void
applyDelete(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
48
virtual
void
applyInsertBefore(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
49
virtual
void
applyInsertAfter(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
50
virtual
void
applyInsertAsFirst(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
51
virtual
void
applyInsertAsLast(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
52
virtual
void
applyReplaceNode(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
53
virtual
void
applyReplaceAttribute(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
54
virtual
void
applyReplaceElementContent(
const
PendingUpdate &update,
DynamicContext
*context) = 0;
55
56
virtual
void
completeUpdate(
DynamicContext
*context) = 0;
57
58
protected
:
59
DocumentCache::ValidationMode
valMode_
;
60
};
61
62
#endif
Generated by
1.8.1.1