All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.bimface.sdk.client.DataClient Maven / Gradle / Ivy

The newest version!
package com.bimface.sdk.client;

import com.bimface.data.bean.*;
import com.bimface.data.bean.response.EssentialPipingElementResponseBean;
import com.bimface.data.bean.response.EssentialSystemResponseBean;
import com.bimface.data.enums.ToleranceType;
import com.bimface.exception.BimfaceException;
import com.bimface.http.BimfaceResponseChecker;
import com.bimface.piping.bean.EssentialPipingPathBean;
import com.bimface.piping.bean.request.EssentialPipingElementTypeAndFilterRequest;
import com.bimface.piping.bean.request.EssentialPipingElementTypeAndFiltersRequest;
import com.bimface.sdk.bean.request.QueryElementIdsRequest;
import com.bimface.sdk.config.Config;
import com.bimface.sdk.interfaces.DataInteface;
import com.bimface.sdk.utils.ConvertUtils;
import com.glodon.paas.foundation.restclient.RESTClientBuilder;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import org.jetbrains.annotations.NotNull;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.List;
import java.util.Map;

public class DataClient extends AbstractClient {
    private static final Logger logger = LoggerFactory.getLogger(DataClient.class);

    private final static Gson GSON = new Gson();

    private DataInteface dataClient;

    private static DataClient instance;

    public static synchronized DataClient getDataClient(String dataBaseUrl) {
        return getDataClient(dataBaseUrl, null);
    }

    public static synchronized DataClient getDataClient(String dataBaseUrl, Config config) {
        return instance != null ? instance : new DataClient(dataBaseUrl, config);
    }

    private DataClient(String dataBaseUrl, Config config) {
        RESTClientBuilder builder = new RESTClientBuilder()
                .serviceBaseUrl(dataBaseUrl)
                .responseChecker(new BimfaceResponseChecker());

        // 如果没设置config,则使用rest client的默认配置
        if (config != null) {
            builder.timeoutMilli(config.getConnectTimeout(), config.getWriteTimeout(), config.getReadTimeout());
        }

        if (logger.isDebugEnabled()) {
            builder.enableHttpLoggingInterceptor();
        }
        this.dataClient = builder.build(DataInteface.class);
    }

    @Deprecated
    public Property getSingleModelElementProperty(@NotNull Long fileId, @NotNull String elementId,
                                                  @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelElementProperty(fileId, elementId, accessToken));
    }

    public List getFileDatabagResource(Long fileId, Long integrateId, Long compareId, DatabagResourceRequest databagResourceRequest, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getFileDatabagResource(fileId, integrateId, compareId, databagResourceRequest, accessToken));
    }

    public Property getIntegrateModelProperty(@NotNull Long integrateId, @NotNull Long fileId,
                                              @NotNull String elementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelProperty(integrateId, fileId, elementId, accessToken));
    }

    public String getDatabagDownloadUrl(Long fileId, Long integrateId, Long compareId, String type,
                                        String databagVersion, @NotNull String accessToken) throws BimfaceException {
        if ((fileId != null && integrateId != null) ||
                (integrateId != null && compareId != null) ||
                (fileId != null && compareId != null) ||
                (fileId == null && integrateId == null && compareId == null)) {
            throw new IllegalArgumentException("one and only one argument can be not null in (fileId, integrateId, compareId)");
        }

        accessToken = validToken(accessToken);
        return executeCall(dataClient.getDatabagDownloadUrl(fileId, integrateId, compareId, type, databagVersion, accessToken));
    }

    public Long getDatabagSize(@NotNull Long fileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        DatabagInfo databagInfo = executeCall(dataClient.getDataBagSize(fileId, accessToken));
        if (databagInfo != null) {
            return databagInfo.getLength();
        }
        throw new BimfaceException("find databagInfo error");
    }

    public List getSingleModelElements(@NotNull Long fileId, String specialty, String floor, String categoryId,
                                               String family, String familyType, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelElements(fileId, specialty, floor, categoryId, family, familyType, accessToken));
    }

    public ElementsWithBoundingBox getIntegrateModelElements(@NotNull Long integrateId, String specialty, String floor, String categoryId,
                                                             String family, String familyType, String systemType, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelElements(integrateId, specialty, floor, categoryId, family, familyType, systemType, accessToken));
    }

    public Object getIntegrateTree(@NotNull Long integrateId, @NotNull Integer treeType, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateTree(integrateId, treeType, accessToken));
    }

    public List getModelCompareResult(@NotNull Long compareId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getModelCompareResult(compareId, accessToken));
    }

    public ModelCompareChange getModelCompareChange(@NotNull Long compareId, @NotNull Long previousFileId,
                                                    @NotNull String previousElementId, @NotNull Long followingFileId,
                                                    @NotNull String followingElementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getModelCompareChange(compareId, previousFileId, previousElementId, followingFileId, followingElementId, accessToken));
    }

    public Object getSingleModelTree(@NotNull Long fileId, String version, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelTree(fileId, version, accessToken));
    }

    public List getSingleModelElementIds(@NotNull Long fileId, @NotNull QueryElementIdsRequest queryElementIdsRequest, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelElementIds(fileId,
                ConvertUtils.convertToParamsMap(queryElementIdsRequest), accessToken));
    }

    public List> getSingleModelFileIdFloorsMapping(@NotNull List fileIds, Boolean includeArea,
                                                                       Boolean includeRoom, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        String fileIdsList = fileIds.stream().reduce((i, j) -> i + "," + j).orElse(null);
        return executeCall(dataClient.getSingleModelFileIdFloorsMapping(fileIdsList, includeArea, includeRoom, accessToken));
    }

    public List getSingleModelFloors(@NotNull Long fileId, Boolean includeArea, Boolean includeRoom, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelFloors(fileId, includeArea, includeRoom, accessToken));
    }

    public Property getSingleModelElement(@NotNull Long fileId, @NotNull String elementId, @NotNull Boolean includeOverrides, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelElement(fileId, elementId, includeOverrides, accessToken));
    }

    public List getSingleModelElements(@NotNull Long fileId, Boolean includeOverrides, ElementPropertyFilterRequest elementPropertyFilterRequest, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelElements(fileId, includeOverrides, elementPropertyFilterRequest, accessToken));
    }

    public Property getSingleModelElementProperty(@NotNull Long fileId, @NotNull List elementIds, @NotNull Boolean includeOverrides, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelElementProperty(fileId, elementIds, includeOverrides, accessToken));
    }

    public List getSingleModelElementMaterials(@NotNull Long fileId, @NotNull String elementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelElementMaterials(fileId, elementId, accessToken));
    }

    public List getSingleModelViews(@NotNull Long fileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelViews(fileId, accessToken));
    }

    public List getSingleModelRooms(@NotNull Long fileId, String floorId, String elementId,
                                          ToleranceType roomToleranceZ, ToleranceType roomToleranceXY,
                                          @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelRooms(fileId, floorId, elementId, roomToleranceZ, roomToleranceXY,
                accessToken));
    }

    public Room getSingleModelRoom(@NotNull Long fileId, @NotNull String roomId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelRoom(fileId, roomId, accessToken));
    }

    public List getSingleModelAreas(@NotNull Long fileId, @NotNull String floorId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelAreas(fileId, floorId, accessToken));
    }

    public Area getSingleModelArea(@NotNull Long fileId, @NotNull String areaId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelArea(fileId, areaId, accessToken));
    }

    public List getSingleModelTreeV2(@NotNull Long fileId, FileTreeRequestBody requestBody, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        Object response = requestBody != null ? executeCall(dataClient.getSingleModelTreeV2(fileId, "2.0", null, requestBody, accessToken))
                : executeCall(dataClient.getSingleModelTreeV2(fileId, "2.0", null, accessToken));

        return GSON.fromJson(GSON.toJson(response), new TypeToken>() {
        }.getType());
    }

    public Tree getSingleModelCustomizedTree(@NotNull Long fileId, FileTreeRequestBody requestBody, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        Object response = requestBody != null ? executeCall(dataClient.getSingleModelTreeV2(fileId, null, "customized", requestBody, accessToken))
                : executeCall(dataClient.getSingleModelTreeV2(fileId, null, "customized", accessToken));

        return GSON.fromJson(GSON.toJson(response), new TypeToken() {
        }.getType());
    }

    public List getSingleModelLinks(@NotNull Long fileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelLinks(fileId, accessToken));
    }

    public List getSingleModelDrawingSheets(@NotNull Long fileId, String elementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelDrawingSheets(fileId, elementId, accessToken));
    }

    public Object getSingleModelModelInfo(@NotNull Long fileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return execute(dataClient.getSingleModelModelInfo(fileId, accessToken));
    }

    public List getSingleModelChildElementIds(@NotNull Long fileId, @NotNull String elementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSingleModelChildElementIds(fileId, elementId, accessToken));
    }

    public String updateSingleModelElementProperties(@NotNull Long fileId, @NotNull String elementId, List propertyGroups, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.updateSingleModelElementProperties(fileId, elementId, propertyGroups, accessToken));
    }

    public String deleteSingleModelElementProperties(@NotNull Long fileId, @NotNull String elementId, List propertyGroups, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.deleteSingleModelElementProperties(fileId, elementId, propertyGroups, accessToken));
    }

    public ElementsWithBoundingBox getIntegrateModelElementIds(@NotNull Long integrateId,
                                                               @NotNull QueryElementIdsRequest queryElementIdsRequest,
                                                               @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelElementIds(integrateId,
                ConvertUtils.convertToParamsMap(queryElementIdsRequest), accessToken));
    }

    public String updateIntegrateModelElementProperties(@NotNull Long integrateId, @NotNull String fileIdHash,
                                                        @NotNull String elementId, List propertyGroups,
                                                        @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.updateIntegrateModelElementProperties(integrateId, fileIdHash, elementId, propertyGroups, accessToken));
    }

    public String deleteIntegrateModelElementProperties(@NotNull Long integrateId, @NotNull String fileIdHash,
                                                        @NotNull String elementId, List propertyGroups,
                                                        @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.deleteIntegrateModelElementProperties(integrateId, fileIdHash, elementId, propertyGroups, accessToken));
    }

    public List getIntegrateModelFloors(@NotNull Long integrateId, Boolean includeArea, Boolean includeRoom, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelFloors(integrateId, includeArea, includeRoom, accessToken));
    }

    public Property getIntegrateModelElement(@NotNull Long integrateId, @NotNull String fileIdHash,
                                             @NotNull String elementId, @NotNull Boolean includeOverrides, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelElement(integrateId, fileIdHash, elementId, includeOverrides, accessToken));
    }

    public Property getIntegrateModelElement(@NotNull Long integrateId, @NotNull String elementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelElement(integrateId, elementId, accessToken));
    }

    public List getIntegrateElementBatch(@NotNull Long integrateId, boolean includeOverrides, IntegrateElementPropertyFilterRequest filterRequest, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateElementBatch(integrateId, includeOverrides, filterRequest, accessToken));
    }

    public List getIntegrateModelElementMaterials(@NotNull Long integrateId, @NotNull String fileIdHash,
                                                                @NotNull String elementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelElementMaterials(integrateId, fileIdHash, elementId, accessToken));
    }

    public Tree getIntegrateModelTree(@NotNull Long integrateId, String treeType, List desiredHierarchy,
                                      IntegrationTreeOptionalRequestBody requestBody, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return requestBody != null ? executeCall(dataClient.getIntegrateModelTree(integrateId, treeType, desiredHierarchy, requestBody, accessToken))
                : executeCall(dataClient.getIntegrateModelTree(integrateId, treeType, desiredHierarchy, accessToken));
    }

    public List getIntegrateModelFileViews(@NotNull Long integrateId, String viewType, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelFileViews(integrateId, viewType, accessToken));
    }

    public List getIntegrateModelRooms(@NotNull Long integrateId, String floorId, String fileIdHash, String elementId,
                                             ToleranceType roomToleranceZ, ToleranceType roomToleranceXY,
                                             @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelRooms(integrateId, floorId, fileIdHash, elementId, roomToleranceZ,
                roomToleranceXY, accessToken));
    }

    public Room getIntegrateModelRoom(@NotNull Long integrateId, @NotNull String roomId,
                                      @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelRoom(integrateId, roomId, accessToken));
    }

    public List getIntegrateModelAreas(@NotNull Long integrateId, @NotNull String floorId,
                                             @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelAreas(integrateId, floorId, accessToken));
    }

    public Area getIntegrateModelArea(@NotNull Long integrateId, @NotNull String areaId,
                                      @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelArea(integrateId, areaId, accessToken));
    }

    public List getIntegrateFiles(@NotNull Long integrateId, Boolean includeDrawingSheet, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateFiles(integrateId, includeDrawingSheet, accessToken));
    }

    public String getIntegrateModelViewToken(@NotNull Long integrateId, @NotNull String fileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelViewToken(integrateId, fileId, accessToken));
    }

    public List getIntegrateModelSegmentGroups(@NotNull Long integrateId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelSegmentGroups(integrateId, accessToken));
    }

    public List getIntegrateModelSegmentTree(@NotNull Long integrateId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelSegmentTree(integrateId, accessToken));
    }

    public List getIntegrateModelSegments(@NotNull Long integrateId, @NotNull String segmentGroupId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelSegments(integrateId, segmentGroupId, accessToken));
    }

    public List getIntegrateModelSegmentElementIds(@NotNull Long integrateId, @NotNull String segmentId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateModelSegmentElementIds(integrateId, segmentId, accessToken));
    }

    public Property getIntegrateModelCommonElementProperties(@NotNull Long integrateId, List fileIdHashWithElementIds,
                                                             @NotNull Boolean includeOverrides, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return fileIdHashWithElementIds != null ? executeCall(dataClient.getIntegrateModelCommonElementProperties(integrateId, fileIdHashWithElementIds, includeOverrides, accessToken)) :
                executeCall(dataClient.getIntegrateModelCommonElementProperties(integrateId, accessToken));
    }

    public void addAssociations(@NotNull String integrateId, String fromIntegrationId, String fromBusinessType, String fromBusinessFlag,
                                BusinessAssociationRequest request, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        if (request != null)
            executeCall(dataClient.addAssociations(integrateId, fromIntegrationId, fromBusinessType, fromBusinessFlag, request, accessToken));
        else
            executeCall(dataClient.addAssociations(integrateId, fromIntegrationId, fromBusinessType, fromBusinessFlag, accessToken));
    }

    public List getAssociationsByElementId(@NotNull String integrateId, @NotNull String elementId, String businessType,
                                                                       String businessFlag, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getAssociationsByElementId(integrateId, elementId, businessType, businessFlag, accessToken));
    }

    public List getAssociationsByBusinessId(@NotNull String integrateId, @NotNull String businessType, @NotNull String businessId,
                                                                        @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getAssociationsByBusinessId(integrateId, businessType, businessId, accessToken));
    }

    public void deleteAssociationsByElementId(@NotNull String integrateId, @NotNull String elementId, String businessType,
                                              String businessFlag, List businessIds, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        executeCall(dataClient.deleteAssociationsByElementId(integrateId, elementId, businessType, businessFlag, businessIds, accessToken));
    }

    public void deleteAssociationsByBusinessId(@NotNull String integrateId, @NotNull String businessType, @NotNull String businessId,
                                               @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        executeCall(dataClient.deleteAssociationsByBusinessId(integrateId, businessType, businessId, accessToken));
    }

    public void deleteAssociationsByElements(@NotNull String integrateId, String businessType, String businessFlag,
                                             List elementIds, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        executeCall(dataClient.deleteAssociationsByElements(integrateId, businessType, businessFlag, elementIds, accessToken));
    }

    public void deleteAssociationsByBizIds(@NotNull String integrateId, String businessType, String businessFlag,
                                           List businessIds, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        executeCall(dataClient.deleteAssociationsByBizIds(integrateId, businessType, businessFlag, businessIds, accessToken));
    }

    public ModelCompareChange getModelCompareElementChange(@NotNull Long comparisonId, @NotNull Long previousFileId, @NotNull String previousElementId,
                                                           @NotNull Long followingFileId, @NotNull String followingElementId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getModelCompareElementChange(comparisonId, previousFileId, previousElementId, followingFileId, followingElementId, accessToken));
    }

    public Tree getModelCompareTree(@NotNull Long comparisonId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getModelCompareTree(comparisonId, accessToken));
    }

    public Pagination getModelCompareResult(@NotNull Long comparisonId, String family, String elementName, Integer page,
                                                              Integer pageSize, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getModelCompareResult(comparisonId, family, elementName, page, pageSize, accessToken));
    }

    public MaterialOverrideSetVO getMaterialOverrideSet(@NotNull Long id, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getMaterialOverrideSet(id, accessToken));
    }

    public List getRfaFamilyPropertyNames(@NotNull Long rfaFileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getRfaFamilyPropertyNames(rfaFileId, accessToken));
    }

    public List getRfaFamilyTypes(@NotNull Long rfaFileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getRfaFamilyTypes(rfaFileId, accessToken));
    }

    public RfaFamilyTypeProperty getRfaFamilyTypeProperty(@NotNull Long rfaFileId, @NotNull String familyTypeGuid, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getRfaFamilyTypeProperty(rfaFileId, familyTypeGuid, accessToken));
    }

    public List getElements(@NotNull String requestBody, Boolean includeOverrides, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getElements(requestBody, includeOverrides, accessToken));
    }

    public List getRooms(@NotNull String requestBody, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getRooms(requestBody, accessToken));
    }

    public List getAreas(@NotNull String requestBody, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getAreas(requestBody, accessToken));
    }

    public List getPropertyValues(@NotNull List targetIds, String targetType,
                                                      @NotNull List properties, Boolean includeOverrides,
                                                      @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getPropertyValues(targetIds, targetType, properties, includeOverrides, accessToken));
    }

    public String getPaginationContextId(@NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getPaginationContextId(accessToken));
    }

    public String getFileThumbnailUrl(@NotNull Long fileId, @NotNull Integer size, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getFileThumbnailUrl(fileId, size, accessToken));
    }

    public String getDwgPdfUrl(@NotNull Long dwgFileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getDwgPdfUrl(dwgFileId, accessToken));
    }

    public String getDwgPreviewImageUrl(@NotNull Long dwgFileId, @NotNull String layoutName, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getDwgPreviewImageUrl(dwgFileId, layoutName, accessToken));
    }

    public String getFileDatabagRootUrl(Long fileId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getFileDatabagRootUrl(fileId, accessToken));
    }

    public String getIntegrateDatabagRootUrl(Long integrateId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getIntegrateDatabagRootUrl(integrateId, accessToken));
    }

    public List getDrawingFrames(@NotNull Long fileId, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getDrawingFrames(fileId, accessToken));
    }

    public List getMEPSystem(@NotNull Long fileId, String systemCategory, String systemType,
                                        @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getMEPSystem(fileId, systemCategory, systemType, accessToken));
    }

    public List getBoundingBoxes(@NotNull Long integrateId, List fileIdWithEleIdList,
                                                           @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getBoundingBoxes(integrateId, fileIdWithEleIdList, accessToken));
    }

    public Pagination pageGetDrawingCompareResult(@NotNull Long comparisonId, String layer, Integer page,
                                                                      Integer pageSize, @NotNull String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.pageGetDrawingCompareResult(comparisonId, layer, page, pageSize, accessToken));
    }

    public Object getClashDetectiveResult(Long clashDetectiveId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getClashDetectiveResult(clashDetectiveId, accessToken));
    }

    public List getSystem(String fileId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSystem(fileId, accessToken));
    }

    public List getSystem(Long integrateId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getSystem(integrateId, accessToken));
    }

    public List getRelatedNodes(String fileId, String elementId, EssentialPipingElementTypeAndFiltersRequest request, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getRelatedNodes(fileId, elementId, request, accessToken));
    }

    public List getRelatedNodes(Long integrateId, String fileIdHash, String elementId, EssentialPipingElementTypeAndFiltersRequest request, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getRelatedNodes(integrateId, fileIdHash, elementId, request, accessToken));
    }

    public List getPaths(String fileId, String startElementId, String endElementId, Integer limit, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getPaths(fileId, startElementId, endElementId, limit, accessToken));
    }

    public List getPaths(Long integrateId, String fileIdHash, String startElementId, String endElementId, Integer limit, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getPaths(integrateId, fileIdHash, startElementId, endElementId, limit, accessToken));
    }

    public List getNeighbors(String fileId, String elementId, EssentialPipingElementTypeAndFiltersRequest request, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getNeighbors(fileId, elementId, request, accessToken));
    }

    public List getNeighbors(Long integrateId, String fileIdHash, String elementId, EssentialPipingElementTypeAndFiltersRequest request, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getNeighbors(integrateId, fileIdHash, elementId, request, accessToken));
    }

    public List getElementUvDirections(String fileId, String systemId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getElementUvDirections(fileId, systemId, accessToken));
    }

    public List getElementUvDirections(Long integrateId, String fileIdHash, String systemId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getElementUvDirections(integrateId, fileIdHash, systemId, accessToken));
    }

    public EssentialPipingElementResponseBean getElementProperties(String fileId, String elementId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getElementProperties(fileId, elementId, accessToken));
    }

    public EssentialPipingElementResponseBean getElementProperties(Long integrateId, String fileIdHash, String elementId, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getElementProperties(integrateId, fileIdHash, elementId, accessToken));
    }

    public List getElementIdsInSystem(String fileId, String systemId, List> filterMaps, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getElementIdsInSystem(fileId, systemId, filterMaps, accessToken));
    }

    public List getElementIdsInSystem(Long integrateId, String fileIdHash, String systemId, List> filterMaps, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getElementIdsInSystem(integrateId, fileIdHash, systemId, filterMaps, accessToken));
    }

    public List getDirectlyConnectNodes(String fileId, String elementId, EssentialPipingElementTypeAndFilterRequest body, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getDirectlyConnectNodes(fileId, elementId, body, accessToken));
    }

    public List getDirectlyConnectNodes(Long integrateId, String fileIdHash, String elementId, EssentialPipingElementTypeAndFilterRequest body, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.getDirectlyConnectNodes(integrateId, fileIdHash, elementId, body, accessToken));
    }

    public List batchGetElementUvDirections(String fileId, List elementIds, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.batchGetElementUvDirections(fileId, elementIds, accessToken));
    }

    public List batchGetElementUvDirections(Long integrateId, List body, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.batchGetElementUvDirections(integrateId, body, accessToken));
    }

    public List batchGetElementProperties(String fileId, List elementIds, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.batchGetElementProperties(fileId, elementIds, accessToken));
    }

    public List batchGetElementProperties(Long integrateId, List body, String accessToken) throws BimfaceException {
        accessToken = validToken(accessToken);
        return executeCall(dataClient.batchGetElementProperties(integrateId, body, accessToken));
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy