01: /*
02: * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved.
03: */
04: package com.tc.config.schema.repository;
05:
06: import org.apache.xmlbeans.XmlException;
07: import org.apache.xmlbeans.XmlObject;
08:
09: import com.tc.config.schema.validate.ConfigurationValidator;
10:
11: /**
12: * A {@link BeanRepository} that lets clients change the bean in it.
13: */
14: public interface MutableBeanRepository extends BeanRepository {
15:
16: void setBean(XmlObject bean, String sourceDescription)
17: throws XmlException;
18:
19: void addValidator(ConfigurationValidator validator);
20:
21: /**
22: * For <strong>TESTS ONLY</strong>.
23: */
24: void saveCopyOfBeanInAnticipationOfFutureMutation();
25:
26: /**
27: * For <strong>TESTS ONLY</strong>.
28: */
29: void didMutateBean();
30:
31: }
|