Class BimWorksClient

  • All Implemented Interfaces:
    java.lang.AutoCloseable

    public class BimWorksClient
    extends java.lang.Object
    implements java.lang.AutoCloseable
    BimWorksClient object can be short-lived objects (but long-lived objects are fine too). BimWorksClient objects are usually authenticated by either a username/password combination, a BIM.works API Token, or some other type of auth. BimWorksClient objects cannot be constructed directly, but only through the BimWorksClientFactory.
    • Field Detail

      • OBJECT_MAPPER

        public static final com.fasterxml.jackson.databind.ObjectMapper OBJECT_MAPPER
      • gis

        public final GisApi gis
      • ifc

        public final IfcApi ifc
      • bim

        public final Bim bim
    • Method Detail

      • close

        public void close()
                   throws java.lang.InterruptedException
        Specified by:
        close in interface java.lang.AutoCloseable
        Throws:
        java.lang.InterruptedException
      • getNodeClient

        public nl.sascom.backplanepublic.client.NodeClient getNodeClient()
      • generateUploadToken

        public com.fasterxml.jackson.databind.node.ObjectNode generateUploadToken​(java.util.UUID parentUuid,
                                                                                  java.time.Duration duration,
                                                                                  java.nio.file.Path path)
                                                                           throws BimWorksException
        Throws:
        BimWorksException
      • generateDownloadToken

        public com.fasterxml.jackson.databind.node.ObjectNode generateDownloadToken​(java.util.UUID newNodeUuid,
                                                                                    java.time.Duration duration)
                                                                             throws BimWorksException
        Throws:
        BimWorksException
      • generateQueryToken

        public com.fasterxml.jackson.databind.node.ObjectNode generateQueryToken​(java.util.Set<java.util.UUID> versionUuids,
                                                                                 BimQuery bimQuery,
                                                                                 java.lang.String[] paths,
                                                                                 java.time.Duration duration)
                                                                          throws BimWorksException
        Throws:
        BimWorksException
      • getApplicationVersion

        public java.lang.String getApplicationVersion()
                                               throws java.io.IOException,
                                                      nl.sascom.backplanepublic.common.ExecuteException
        Throws:
        java.io.IOException
        nl.sascom.backplanepublic.common.ExecuteException
      • getApi

        public nl.sascom.backplanepublic.client.NodeClient getApi()
      • executeAsyncTask

        public com.fasterxml.jackson.databind.JsonNode executeAsyncTask​(nl.sascom.backplanepublic.common.Request request)
                                                                 throws BimWorksException
        Throws:
        BimWorksException
      • createRequest

        public nl.sascom.backplanepublic.common.Request createRequest()
      • createAsyncTask

        public nl.sascom.backplanepublic.common.ClientTask createAsyncTask​(nl.sascom.backplanepublic.common.Request request)
      • registerStream

        public java.lang.String registerStream​(java.nio.file.Path path)
                                        throws nl.sascom.backplanepublic.common.StreamAlreadyRegisteredException
        Throws:
        nl.sascom.backplanepublic.common.StreamAlreadyRegisteredException
      • registerStream

        public java.lang.String registerStream​(java.lang.String filename,
                                               java.lang.String contentType,
                                               java.lang.String url,
                                               long filesize)
                                        throws java.net.MalformedURLException,
                                               nl.sascom.backplanepublic.common.StreamAlreadyRegisteredException
        Throws:
        java.net.MalformedURLException
        nl.sascom.backplanepublic.common.StreamAlreadyRegisteredException
      • registerStream

        public java.lang.String registerStream​(java.lang.String filename,
                                               long filesize,
                                               java.lang.String contentType,
                                               java.io.InputStream inputStream)
                                        throws nl.sascom.backplanepublic.common.StreamAlreadyRegisteredException
        Throws:
        nl.sascom.backplanepublic.common.StreamAlreadyRegisteredException
      • setAuthToken

        public void setAuthToken​(com.fasterxml.jackson.databind.node.ObjectNode auth)