void close ( ) { if ( this . project != null ) { Util . logger ( ) . log ( Level . FINE , "Closing Protege project {0}" , this . projectIdentifier ) ; for ( Iterator < ProjectListener > itr = this . projectListeners . iterator ( ) ; itr . hasNext ( ) ; ) { this . project . removeProjectListener ( itr . next ( ) ) ; itr . remove ( ) ; } try { this . project . dispose ( ) ; Util . logger ( ) . fine ( "Done closing connection." ) ; } catch ( IllegalStateException e ) { /* * Protege registers a shutdown hook that is removed when * dispose() is called on a project. However, we might call this * method during an already started shutdown process. See * documentation for java.lang.Runtime.removeShutdownHook. This * exception should be harmless, unless there are other reasons * dispose() could throw this exception? */ Util . logger ( ) . fine ( "Done closing connection." ) ; } finally { this . project = null ; } } }
Closes the project .