01: /*
02: * The contents of this file are subject to the terms of the Common Development
03: * and Distribution License (the License). You may not use this file except in
04: * compliance with the License.
05: *
06: * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
07: * or http://www.netbeans.org/cddl.txt.
08: *
09: * When distributing Covered Code, include this CDDL Header Notice in each file
10: * and include the License file at http://www.netbeans.org/cddl.txt.
11: * If applicable, add the following below the CDDL Header, with the fields
12: * enclosed by brackets [] replaced by your own identifying information:
13: * "Portions Copyrighted [year] [name of copyright owner]"
14: *
15: * The Original Software is NetBeans. The Initial Developer of the Original
16: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
17: * Microsystems, Inc. All Rights Reserved.
18: */
19:
20: /**
21: *
22: */package org.netbeans.modules.bpel.model.api.support;
23:
24: import org.netbeans.modules.bpel.model.api.BpelEntity;
25: import org.netbeans.modules.bpel.model.api.ExtensionEntity;
26: import org.netbeans.modules.xml.xam.ComponentUpdater.Operation;
27:
28: /**
29: * @author ads
30: * This is updater intercace that needs to be implemented in extension
31: * implementation.
32: * It is used for synchronization OM and source code.
33: */
34: public interface EntityUpdater {
35:
36: /**
37: * This method is called from syncer when <code>target</code>
38: * should be updated with child . Operation is specified
39: * in <code>operation</code> argument.
40: * @param target Parent element.
41: * @param child Child element.
42: * @param operation Operation that should be performed on child in parent.
43: */
44: void update(BpelEntity target, ExtensionEntity child,
45: Operation operation);
46:
47: /**
48: * This method is called from syncer when <code>target</code>
49: * should be updated with child . Operation is specified
50: * in <code>operation</code> argument.
51: * @param target Parent element.
52: * @param child Child element.
53: * @param index Index of child element in prent.
54: * @param operation Operation that should be performed on child in parent.
55: */
56: void update(BpelEntity target, ExtensionEntity child, int index,
57: Operation operation);
58: }
|