Class BimServerClient

  • All Implemented Interfaces:
    AutoCloseable, org.bimserver.plugins.services.BimServerClientInterface, org.bimserver.shared.ConnectDisconnectListener, org.bimserver.shared.ServiceHolder, org.bimserver.shared.TokenHolder

    public class BimServerClient
    extends Object
    implements org.bimserver.shared.ConnectDisconnectListener, org.bimserver.shared.TokenHolder, org.bimserver.shared.ServiceHolder, org.bimserver.plugins.services.BimServerClientInterface
    • Constructor Detail

      • BimServerClient

        public BimServerClient​(org.bimserver.emf.MetaDataManager metaDataManager,
                               String baseAddress,
                               org.bimserver.shared.meta.SServicesMap servicesMap,
                               Channel channel)
    • Method Detail

      • getMetaDataManager

        public org.bimserver.emf.MetaDataManager getMetaDataManager()
        Specified by:
        getMetaDataManager in interface org.bimserver.plugins.services.BimServerClientInterface
      • setAuthentication

        public void setAuthentication​(org.bimserver.shared.AuthenticationInfo authenticationInfo)
                               throws org.bimserver.shared.exceptions.ServerException,
                                      org.bimserver.shared.exceptions.UserException,
                                      org.bimserver.shared.ChannelConnectionException
        Specified by:
        setAuthentication in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.ChannelConnectionException
      • connect

        public void connect()
                     throws org.bimserver.shared.exceptions.ServerException,
                            org.bimserver.shared.exceptions.UserException,
                            org.bimserver.shared.ChannelConnectionException
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.ChannelConnectionException
      • authenticate

        public void authenticate()
                          throws org.bimserver.shared.exceptions.ServerException,
                                 org.bimserver.shared.exceptions.UserException
        Specified by:
        authenticate in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
      • getChannel

        public Channel getChannel()
      • registerConnectDisconnectListener

        public void registerConnectDisconnectListener​(org.bimserver.shared.ConnectDisconnectListener connectDisconnectListener)
      • notifyOfConnect

        public void notifyOfConnect()
      • notifyOfDisconnect

        public void notifyOfDisconnect()
      • disconnect

        public void disconnect()
        Specified by:
        disconnect in interface org.bimserver.plugins.services.BimServerClientInterface
      • connected

        public void connected()
        Specified by:
        connected in interface org.bimserver.shared.ConnectDisconnectListener
      • disconnected

        public void disconnected()
        Specified by:
        disconnected in interface org.bimserver.shared.ConnectDisconnectListener
      • getModel

        public ClientIfcModel getModel​(org.bimserver.interfaces.objects.SProject project,
                                       long roid,
                                       boolean deep,
                                       boolean recordChanges)
                                throws org.bimserver.shared.exceptions.BimServerClientException,
                                       org.bimserver.shared.exceptions.UserException,
                                       org.bimserver.shared.exceptions.ServerException,
                                       org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getModel in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.BimServerClientException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getModel

        public ClientIfcModel getModel​(org.bimserver.interfaces.objects.SProject project,
                                       long roid,
                                       boolean deep,
                                       boolean recordChanges,
                                       boolean includeGeometry)
                                throws org.bimserver.shared.exceptions.UserException,
                                       org.bimserver.shared.exceptions.ServerException
        Specified by:
        getModel in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • getStreamingModel

        public StreamingModel getStreamingModel​(org.bimserver.interfaces.objects.SProject project,
                                                long roid)
      • isConnected

        public boolean isConnected()
      • unregisterNotificationListener

        public void unregisterNotificationListener​(org.bimserver.shared.interfaces.NotificationInterface notificationInterface)
      • getNotificationInterface

        public org.bimserver.shared.interfaces.NotificationInterface getNotificationInterface()
                                                                                       throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getRemoteServiceInterface

        public org.bimserver.shared.interfaces.RemoteServiceInterface getRemoteServiceInterface()
                                                                                         throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getRemoteServiceInterface in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getLowLevelInterface

        public org.bimserver.shared.interfaces.LowLevelInterface getLowLevelInterface()
                                                                               throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getLowLevelInterface in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getServiceInterface

        public org.bimserver.shared.interfaces.ServiceInterface getServiceInterface()
                                                                             throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getServiceInterface in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getAdminInterface

        public org.bimserver.shared.interfaces.AdminInterface getAdminInterface()
                                                                         throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getAdminInterface in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getAuthInterface

        public org.bimserver.shared.interfaces.AuthInterface getAuthInterface()
                                                                       throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getAuthInterface in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getSettingsInterface

        public org.bimserver.shared.interfaces.SettingsInterface getSettingsInterface()
                                                                               throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getSettingsInterface in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getPluginInterface

        public org.bimserver.shared.interfaces.PluginInterface getPluginInterface()
                                                                           throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getPluginInterface in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getServicesMap

        public org.bimserver.shared.meta.SServicesMap getServicesMap()
      • getToken

        public String getToken()
        Specified by:
        getToken in interface org.bimserver.plugins.services.BimServerClientInterface
        Specified by:
        getToken in interface org.bimserver.shared.TokenHolder
      • setToken

        public void setToken​(String token)
        Specified by:
        setToken in interface org.bimserver.shared.TokenHolder
      • registerTokenChangeListener

        public void registerTokenChangeListener​(org.bimserver.shared.TokenChangeListener tokenChangeListener)
        Specified by:
        registerTokenChangeListener in interface org.bimserver.shared.TokenHolder
      • checkin

        public org.bimserver.interfaces.objects.SLongCheckinActionState checkin​(long poid,
                                                                                String comment,
                                                                                long deserializerOid,
                                                                                long fileSize,
                                                                                String filename,
                                                                                InputStream inputStream,
                                                                                org.bimserver.plugins.services.CheckinProgressHandler progressHandler)
                                                                         throws org.bimserver.shared.exceptions.ServerException,
                                                                                org.bimserver.shared.exceptions.UserException,
                                                                                org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        checkin in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • checkinSync

        public org.bimserver.interfaces.objects.SLongCheckinActionState checkinSync​(long poid,
                                                                                    String comment,
                                                                                    long deserializerOid,
                                                                                    Path file,
                                                                                    org.bimserver.plugins.services.CheckinProgressHandler progressHandler)
                                                                             throws org.bimserver.shared.exceptions.ServerException,
                                                                                    org.bimserver.shared.exceptions.UserException,
                                                                                    org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        checkinSync in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • checkin

        public org.bimserver.interfaces.objects.SLongCheckinActionState checkin​(long poid,
                                                                                String comment,
                                                                                long deserializerOid,
                                                                                URL url,
                                                                                org.bimserver.plugins.services.CheckinProgressHandler progressHandler)
                                                                         throws org.bimserver.shared.exceptions.ServerException,
                                                                                org.bimserver.shared.exceptions.UserException,
                                                                                org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        checkin in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • checkinSync

        public org.bimserver.interfaces.objects.SLongCheckinActionState checkinSync​(long poid,
                                                                                    String comment,
                                                                                    long deserializerOid,
                                                                                    boolean merge,
                                                                                    long fileSize,
                                                                                    String filename,
                                                                                    InputStream inputStream)
                                                                             throws org.bimserver.shared.exceptions.UserException,
                                                                                    org.bimserver.shared.exceptions.ServerException
        Specified by:
        checkinSync in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • checkinAsync

        public long checkinAsync​(long poid,
                                 String comment,
                                 long deserializerOid,
                                 boolean merge,
                                 long fileSize,
                                 String filename,
                                 InputStream inputStream,
                                 long topicId)
                          throws org.bimserver.shared.exceptions.UserException,
                                 org.bimserver.shared.exceptions.ServerException
        Specified by:
        checkinAsync in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • bulkCheckin

        public void bulkCheckin​(long poid,
                                Path file,
                                String comment)
                         throws org.bimserver.shared.exceptions.UserException,
                                org.bimserver.shared.exceptions.ServerException
        Throws:
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • checkinSync

        public org.bimserver.interfaces.objects.SLongCheckinActionState checkinSync​(long poid,
                                                                                    String comment,
                                                                                    long deserializerOid,
                                                                                    boolean merge,
                                                                                    URL url)
                                                                             throws org.bimserver.shared.exceptions.UserException,
                                                                                    org.bimserver.shared.exceptions.ServerException
        Specified by:
        checkinSync in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • checkinAsync

        public long checkinAsync​(long poid,
                                 String comment,
                                 long deserializerOid,
                                 boolean merge,
                                 URL url,
                                 long topicId)
                          throws org.bimserver.shared.exceptions.UserException,
                                 org.bimserver.shared.exceptions.ServerException
        Specified by:
        checkinAsync in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • download

        public void download​(long roid,
                             long serializerOid,
                             OutputStream outputStream)
                      throws org.bimserver.shared.exceptions.BimServerClientException
        Specified by:
        download in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.BimServerClientException
      • download

        public void download​(long roid,
                             long serializerOid,
                             Path file)
                      throws IOException,
                             org.bimserver.shared.exceptions.BimServerClientException
        Specified by:
        download in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        IOException
        org.bimserver.shared.exceptions.BimServerClientException
      • download

        public void download​(long roid,
                             org.bimserver.database.queries.om.Query query,
                             long serializerOid,
                             Path file)
                      throws IOException,
                             org.bimserver.shared.exceptions.BimServerClientException
        Specified by:
        download in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        IOException
        org.bimserver.shared.exceptions.BimServerClientException
      • download

        public void download​(long roid,
                             String query,
                             long serializerOid,
                             Path file)
                      throws org.bimserver.shared.exceptions.ServerException,
                             org.bimserver.shared.exceptions.UserException,
                             org.bimserver.shared.exceptions.PublicInterfaceNotFoundException,
                             IOException
        Specified by:
        download in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        IOException
      • getDownloadData

        public InputStream getDownloadData​(long topicId)
                                    throws IOException
        Specified by:
        getDownloadData in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        IOException
      • newModel

        public org.bimserver.emf.IfcModelInterface newModel​(org.bimserver.interfaces.objects.SProject project,
                                                            boolean recordChanges)
                                                     throws org.bimserver.shared.exceptions.ServerException,
                                                            org.bimserver.shared.exceptions.UserException,
                                                            org.bimserver.shared.exceptions.BimServerClientException,
                                                            org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        newModel in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.BimServerClientException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • get

        public <T extends org.bimserver.shared.interfaces.PublicInterface> T get​(Class<T> clazz)
                                                                          throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        get in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getMeta

        public org.bimserver.shared.interfaces.MetaInterface getMeta()
                                                              throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getMeta in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getRegistry

        public org.bimserver.shared.interfaces.NotificationRegistryInterface getRegistry()
                                                                                  throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getRegistry in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getBimServerAuthInterface

        public org.bimserver.shared.interfaces.AuthInterface getBimServerAuthInterface()
                                                                                throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getBimServerAuthInterface in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • commit

        public void commit​(org.bimserver.emf.IfcModelInterface model,
                           String comment)
        Specified by:
        commit in interface org.bimserver.plugins.services.BimServerClientInterface
      • getNotificationsManager

        public NotificationsManager getNotificationsManager()
        Specified by:
        getNotificationsManager in interface org.bimserver.plugins.services.BimServerClientInterface
      • getGeometry

        public org.bimserver.plugins.services.Geometry getGeometry​(long roid,
                                                                   org.bimserver.emf.IdEObject ifcProduct)
        Specified by:
        getGeometry in interface org.bimserver.plugins.services.BimServerClientInterface
      • getBinaryGeometryMessagingStreamingSerializerOid

        public long getBinaryGeometryMessagingStreamingSerializerOid()
                                                              throws org.bimserver.shared.exceptions.ServerException,
                                                                     org.bimserver.shared.exceptions.UserException,
                                                                     org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • query

        public long query​(org.bimserver.database.queries.om.Query query,
                          long roid,
                          long serializerOid)
                   throws org.bimserver.shared.exceptions.ServerException,
                          org.bimserver.shared.exceptions.UserException,
                          org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        query in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • downloadExtendedData

        public void downloadExtendedData​(long edid,
                                         OutputStream outputStream)
                                  throws IOException
        Specified by:
        downloadExtendedData in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        IOException
      • getNewServicesInterface

        public org.bimserver.shared.interfaces.NewServicesInterface getNewServicesInterface()
                                                                                     throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getNewServicesInterface in interface org.bimserver.shared.ServiceHolder
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getNotificationRegistryInterface

        public org.bimserver.shared.interfaces.NotificationRegistryInterface getNotificationRegistryInterface()
                                                                                                       throws org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Specified by:
        getNotificationRegistryInterface in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • saveDownloadData

        public void saveDownloadData​(long topicId,
                                     Path path)
                              throws IOException
        Specified by:
        saveDownloadData in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        IOException
      • checkinSync

        public org.bimserver.interfaces.objects.SLongCheckinActionState checkinSync​(long poid,
                                                                                    String comment,
                                                                                    long deserializerOid,
                                                                                    boolean merge,
                                                                                    Path file)
                                                                             throws IOException,
                                                                                    org.bimserver.shared.exceptions.UserException,
                                                                                    org.bimserver.shared.exceptions.ServerException
        Specified by:
        checkinSync in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        IOException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • checkinAsync

        public long checkinAsync​(long poid,
                                 String comment,
                                 long deserializerOid,
                                 boolean merge,
                                 Path file,
                                 long topicId)
                          throws IOException,
                                 org.bimserver.shared.exceptions.UserException,
                                 org.bimserver.shared.exceptions.ServerException
        Specified by:
        checkinAsync in interface org.bimserver.plugins.services.BimServerClientInterface
        Throws:
        IOException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
      • getJsonSerializerOid

        public long getJsonSerializerOid()
                                  throws org.bimserver.shared.exceptions.ServerException,
                                         org.bimserver.shared.exceptions.UserException,
                                         org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getBinaryGeometrySerializerOid

        public long getBinaryGeometrySerializerOid()
                                            throws org.bimserver.shared.exceptions.ServerException,
                                                   org.bimserver.shared.exceptions.UserException,
                                                   org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Throws:
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • waitForDonePreparing

        public void waitForDonePreparing​(long topicId)
                                  throws org.bimserver.shared.exceptions.UserException,
                                         org.bimserver.shared.exceptions.ServerException,
                                         org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
        Throws:
        org.bimserver.shared.exceptions.UserException
        org.bimserver.shared.exceptions.ServerException
        org.bimserver.shared.exceptions.PublicInterfaceNotFoundException
      • getAuthenticationInfo

        public org.bimserver.shared.AuthenticationInfo getAuthenticationInfo()
        Specified by:
        getAuthenticationInfo in interface org.bimserver.plugins.services.BimServerClientInterface
      • getBaseAddress

        public String getBaseAddress()
        Specified by:
        getBaseAddress in interface org.bimserver.plugins.services.BimServerClientInterface