]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.databoard/src/org/simantics/databoard/accessor/impl/ClosableCompositeRecord.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.databoard / src / org / simantics / databoard / accessor / impl / ClosableCompositeRecord.java
1 /*******************************************************************************
2  * Copyright (c) 2010- Association for Decentralized Information Management in
3  * Industry THTH ry.
4  * All rights reserved. This program and the accompanying materials
5  * are made available under the terms of the Eclipse Public License v1.0
6  * which accompanies this distribution, and is available at
7  * http://www.eclipse.org/legal/epl-v10.html
8  * 
9  * Contributors:
10  *    VTT Technical Research Centre of Finland - initial API and implementation
11  *******************************************************************************/
12 package org.simantics.databoard.accessor.impl;
13
14 import org.simantics.databoard.accessor.CloseableAccessor;
15 import org.simantics.databoard.accessor.error.AccessorException;
16
17 public class ClosableCompositeRecord extends CompositeRecord implements CloseableAccessor {
18
19         public interface CloseListener {
20                 void onClosed(CompositeRecord sender) throws AccessorException;
21         }
22         
23         CloseListener closeListener;
24         
25         public ClosableCompositeRecord() {
26                 super();
27         }
28         
29         public ClosableCompositeRecord(CloseListener closeListener) {
30                 super();
31                 this.closeListener = closeListener;
32         }
33         
34         public void setCloseListener(CloseListener closeListener) {
35                 this.closeListener = closeListener;
36         }
37
38         @Override
39         public void close() throws AccessorException {
40                 if (closeListener!=null) closeListener.onClosed(this);
41         }
42
43 }
44