Use page link to get versions list
This commit is contained in:
parent
2dcdb4af8e
commit
0d57f2f6c2
@ -203,6 +203,20 @@ public class AdminController extends BaseController {
|
||||
}
|
||||
}
|
||||
|
||||
@ApiOperation(value = "Check version control settings exists (versionControlSettingsExists)",
|
||||
notes = "Check whether the version control settings exists. " + TENANT_AUTHORITY_PARAGRAPH)
|
||||
@PreAuthorize("hasAuthority('TENANT_ADMIN')")
|
||||
@GetMapping("/vcSettings/exists")
|
||||
@ResponseBody
|
||||
public Boolean versionControlSettingsExists() throws ThingsboardException {
|
||||
try {
|
||||
accessControlService.checkPermission(getCurrentUser(), Resource.ADMIN_SETTINGS, Operation.READ);
|
||||
return versionControlService.getVersionControlSettings(getTenantId()) != null;
|
||||
} catch (Exception e) {
|
||||
throw handleException(e);
|
||||
}
|
||||
}
|
||||
|
||||
@ApiOperation(value = "Creates or Updates the version control settings (saveVersionControlSettings)",
|
||||
notes = "Creates or Updates the version control settings object. " + TENANT_AUTHORITY_PARAGRAPH)
|
||||
@PreAuthorize("hasAuthority('TENANT_ADMIN')")
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
package org.thingsboard.server.controller;
|
||||
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.annotations.ApiParam;
|
||||
import lombok.Data;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
@ -25,6 +26,8 @@ import org.thingsboard.server.common.data.StringUtils;
|
||||
import org.thingsboard.server.common.data.exception.ThingsboardException;
|
||||
import org.thingsboard.server.common.data.id.EntityId;
|
||||
import org.thingsboard.server.common.data.id.EntityIdFactory;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.queue.util.TbCoreComponent;
|
||||
import org.thingsboard.server.service.security.model.SecurityUser;
|
||||
import org.thingsboard.server.service.sync.vc.EntitiesVersionControlService;
|
||||
@ -39,7 +42,7 @@ import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
import static org.thingsboard.server.controller.ControllerConstants.NEW_LINE;
|
||||
import static org.thingsboard.server.controller.ControllerConstants.*;
|
||||
|
||||
@RestController
|
||||
@TbCoreComponent
|
||||
@ -109,13 +112,18 @@ public class EntitiesVersionControlController extends BaseController {
|
||||
" \"name\": \"Device profile 1 version 1.0\"\n" +
|
||||
" }\n" +
|
||||
"]\n```")
|
||||
@GetMapping("/version/{branch}/{entityType}/{externalEntityUuid}")
|
||||
public List<EntityVersion> listEntityVersions(@PathVariable String branch,
|
||||
@PathVariable EntityType entityType,
|
||||
@PathVariable UUID externalEntityUuid) throws ThingsboardException {
|
||||
@GetMapping(value = "/version/{branch}/{entityType}/{externalEntityUuid}", params = {"pageSize", "page"})
|
||||
public PageData<EntityVersion> listEntityVersions(@PathVariable String branch,
|
||||
@PathVariable EntityType entityType,
|
||||
@PathVariable UUID externalEntityUuid,
|
||||
@ApiParam(value = PAGE_SIZE_DESCRIPTION, required = true)
|
||||
@RequestParam int pageSize,
|
||||
@ApiParam(value = PAGE_NUMBER_DESCRIPTION, required = true)
|
||||
@RequestParam int page) throws ThingsboardException {
|
||||
try {
|
||||
EntityId externalEntityId = EntityIdFactory.getByTypeAndUuid(entityType, externalEntityUuid);
|
||||
return versionControlService.listEntityVersions(getTenantId(), branch, externalEntityId);
|
||||
PageLink pageLink = new PageLink(pageSize, page);
|
||||
return versionControlService.listEntityVersions(getTenantId(), branch, externalEntityId, pageLink);
|
||||
} catch (Exception e) {
|
||||
throw handleException(e);
|
||||
}
|
||||
@ -128,11 +136,16 @@ public class EntitiesVersionControlController extends BaseController {
|
||||
" \"name\": \"Device profiles from dev\"\n" +
|
||||
" }\n" +
|
||||
"]\n```")
|
||||
@GetMapping("/version/{branch}/{entityType}")
|
||||
public List<EntityVersion> listEntityTypeVersions(@PathVariable String branch,
|
||||
@PathVariable EntityType entityType) throws ThingsboardException {
|
||||
@GetMapping(value = "/version/{branch}/{entityType}", params = {"pageSize", "page"})
|
||||
public PageData<EntityVersion> listEntityTypeVersions(@PathVariable String branch,
|
||||
@PathVariable EntityType entityType,
|
||||
@ApiParam(value = PAGE_SIZE_DESCRIPTION, required = true)
|
||||
@RequestParam int pageSize,
|
||||
@ApiParam(value = PAGE_NUMBER_DESCRIPTION, required = true)
|
||||
@RequestParam int page) throws ThingsboardException {
|
||||
try {
|
||||
return versionControlService.listEntityTypeVersions(getTenantId(), branch, entityType);
|
||||
PageLink pageLink = new PageLink(pageSize, page);
|
||||
return versionControlService.listEntityTypeVersions(getTenantId(), branch, entityType, pageLink);
|
||||
} catch (Exception e) {
|
||||
throw handleException(e);
|
||||
}
|
||||
@ -153,10 +166,15 @@ public class EntitiesVersionControlController extends BaseController {
|
||||
" \"name\": \"Devices added\"\n" +
|
||||
" }\n" +
|
||||
"]\n```")
|
||||
@GetMapping("/version/{branch}")
|
||||
public List<EntityVersion> listVersions(@PathVariable String branch) throws ThingsboardException {
|
||||
@GetMapping(value = "/version/{branch}", params = {"pageSize", "page"})
|
||||
public PageData<EntityVersion> listVersions(@PathVariable String branch,
|
||||
@ApiParam(value = PAGE_SIZE_DESCRIPTION, required = true)
|
||||
@RequestParam int pageSize,
|
||||
@ApiParam(value = PAGE_NUMBER_DESCRIPTION, required = true)
|
||||
@RequestParam int page) throws ThingsboardException {
|
||||
try {
|
||||
return versionControlService.listVersions(getTenantId(), branch);
|
||||
PageLink pageLink = new PageLink(pageSize, page);
|
||||
return versionControlService.listVersions(getTenantId(), branch, pageLink);
|
||||
} catch (Exception e) {
|
||||
throw handleException(e);
|
||||
}
|
||||
@ -223,9 +241,9 @@ public class EntitiesVersionControlController extends BaseController {
|
||||
try {
|
||||
String versionId = request.getVersionId();
|
||||
if (versionId == null) {
|
||||
List<EntityVersion> versions = versionControlService.listVersions(user.getTenantId(), request.getBranch());
|
||||
if (versions.size() > 0) {
|
||||
versionId = versions.get(0).getId();
|
||||
PageData<EntityVersion> versions = versionControlService.listVersions(user.getTenantId(), request.getBranch(), new PageLink(1));
|
||||
if (versions.getData().size() > 0) {
|
||||
versionId = versions.getData().get(0).getId();
|
||||
} else {
|
||||
throw new IllegalArgumentException("No versions available in branch");
|
||||
}
|
||||
|
||||
@ -29,6 +29,8 @@ import org.thingsboard.server.common.data.exception.ThingsboardException;
|
||||
import org.thingsboard.server.common.data.id.EntityId;
|
||||
import org.thingsboard.server.common.data.id.EntityIdFactory;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.common.data.sync.ThrowingRunnable;
|
||||
import org.thingsboard.server.common.data.sync.ie.EntityExportData;
|
||||
import org.thingsboard.server.common.data.sync.ie.EntityExportSettings;
|
||||
@ -134,18 +136,18 @@ public class DefaultEntitiesVersionControlService implements EntitiesVersionCont
|
||||
|
||||
|
||||
@Override
|
||||
public List<EntityVersion> listEntityVersions(TenantId tenantId, String branch, EntityId externalId) throws Exception {
|
||||
return gitService.listVersions(tenantId, branch, externalId);
|
||||
public PageData<EntityVersion> listEntityVersions(TenantId tenantId, String branch, EntityId externalId, PageLink pageLink) throws Exception {
|
||||
return gitService.listVersions(tenantId, branch, externalId, pageLink);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EntityVersion> listEntityTypeVersions(TenantId tenantId, String branch, EntityType entityType) throws Exception {
|
||||
return gitService.listVersions(tenantId, branch, entityType);
|
||||
public PageData<EntityVersion> listEntityTypeVersions(TenantId tenantId, String branch, EntityType entityType, PageLink pageLink) throws Exception {
|
||||
return gitService.listVersions(tenantId, branch, entityType, pageLink);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EntityVersion> listVersions(TenantId tenantId, String branch) throws Exception {
|
||||
return gitService.listVersions(tenantId, branch);
|
||||
public PageData<EntityVersion> listVersions(TenantId tenantId, String branch, PageLink pageLink) throws Exception {
|
||||
return gitService.listVersions(tenantId, branch, pageLink);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -307,6 +309,12 @@ public class DefaultEntitiesVersionControlService implements EntitiesVersionCont
|
||||
adminSettings.setKey(SETTINGS_KEY);
|
||||
adminSettings.setTenantId(tenantId);
|
||||
}
|
||||
try {
|
||||
gitService.clearRepository(tenantId);
|
||||
gitService.initRepository(tenantId, versionControlSettings);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException("Failed to init repository!", e);
|
||||
}
|
||||
adminSettings.setJsonValue(JacksonUtil.valueToTree(versionControlSettings));
|
||||
AdminSettings savedAdminSettings = adminSettingsService.saveAdminSettings(tenantId, adminSettings);
|
||||
EntitiesVersionControlSettings savedVersionControlSettings;
|
||||
@ -315,12 +323,6 @@ public class DefaultEntitiesVersionControlService implements EntitiesVersionCont
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException("Failed to load version control settings!", e);
|
||||
}
|
||||
try {
|
||||
gitService.clearRepository(tenantId);
|
||||
gitService.initRepository(tenantId, savedVersionControlSettings);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException("Failed to init repository!", e);
|
||||
}
|
||||
return savedVersionControlSettings;
|
||||
}
|
||||
|
||||
|
||||
@ -19,6 +19,8 @@ import org.thingsboard.server.common.data.EntityType;
|
||||
import org.thingsboard.server.common.data.exception.ThingsboardException;
|
||||
import org.thingsboard.server.common.data.id.EntityId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.service.security.model.SecurityUser;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntitiesVersionControlSettings;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntityVersion;
|
||||
@ -37,11 +39,11 @@ public interface EntitiesVersionControlService {
|
||||
VersionCreationResult saveEntitiesVersion(SecurityUser user, VersionCreateRequest request) throws Exception;
|
||||
|
||||
|
||||
List<EntityVersion> listEntityVersions(TenantId tenantId, String branch, EntityId externalId) throws Exception;
|
||||
PageData<EntityVersion> listEntityVersions(TenantId tenantId, String branch, EntityId externalId, PageLink pageLink) throws Exception;
|
||||
|
||||
List<EntityVersion> listEntityTypeVersions(TenantId tenantId, String branch, EntityType entityType) throws Exception;
|
||||
PageData<EntityVersion> listEntityTypeVersions(TenantId tenantId, String branch, EntityType entityType, PageLink pageLink) throws Exception;
|
||||
|
||||
List<EntityVersion> listVersions(TenantId tenantId, String branch) throws Exception;
|
||||
PageData<EntityVersion> listVersions(TenantId tenantId, String branch, PageLink pageLink) throws Exception;
|
||||
|
||||
|
||||
List<VersionedEntityInfo> listEntitiesAtVersion(TenantId tenantId, String branch, String versionId, EntityType entityType) throws Exception;
|
||||
|
||||
@ -31,6 +31,8 @@ import org.thingsboard.server.common.data.ExportableEntity;
|
||||
import org.thingsboard.server.common.data.id.EntityId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.kv.KvEntry;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.common.data.sync.ie.EntityExportData;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntitiesVersionControlSettings;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntityVersion;
|
||||
@ -183,18 +185,18 @@ public class LocalGitVersionControlService implements GitVersionControlService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EntityVersion> listVersions(TenantId tenantId, String branch) {
|
||||
return listVersions(tenantId, branch, (String) null);
|
||||
public PageData<EntityVersion> listVersions(TenantId tenantId, String branch, PageLink pageLink) {
|
||||
return listVersions(tenantId, branch, (String) null, pageLink);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EntityVersion> listVersions(TenantId tenantId, String branch, EntityType entityType) {
|
||||
return listVersions(tenantId, branch, getRelativePath(entityType, null));
|
||||
public PageData<EntityVersion> listVersions(TenantId tenantId, String branch, EntityType entityType, PageLink pageLink) {
|
||||
return listVersions(tenantId, branch, getRelativePath(entityType, null), pageLink);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EntityVersion> listVersions(TenantId tenantId, String branch, EntityId entityId) {
|
||||
return listVersions(tenantId, branch, getRelativePath(entityId.getEntityType(), entityId.getId().toString()));
|
||||
public PageData<EntityVersion> listVersions(TenantId tenantId, String branch, EntityId entityId, PageLink pageLink) {
|
||||
return listVersions(tenantId, branch, getRelativePath(entityId.getEntityType(), entityId.getId().toString()), pageLink);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -249,9 +251,9 @@ public class LocalGitVersionControlService implements GitVersionControlService {
|
||||
return null;
|
||||
}
|
||||
|
||||
private List<EntityVersion> listVersions(TenantId tenantId, String branch, String path) {
|
||||
private PageData<EntityVersion> listVersions(TenantId tenantId, String branch, String path, PageLink pageLink) {
|
||||
try {
|
||||
return gitRepositoryService.listVersions(tenantId, branch, path);
|
||||
return gitRepositoryService.listVersions(tenantId, branch, path, pageLink);
|
||||
} catch (Exception e) {
|
||||
//TODO: analyze and return meaningful exceptions that we can show to the client;
|
||||
throw new RuntimeException(e);
|
||||
|
||||
@ -60,7 +60,6 @@
|
||||
<dependency>
|
||||
<groupId>com.google.guava</groupId>
|
||||
<artifactId>guava</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.core</groupId>
|
||||
|
||||
@ -27,6 +27,8 @@ import org.thingsboard.server.common.data.EntityType;
|
||||
import org.thingsboard.server.common.data.id.EntityId;
|
||||
import org.thingsboard.server.common.data.id.EntityIdFactory;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntitiesVersionControlSettings;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntityVersion;
|
||||
import org.thingsboard.server.common.data.sync.vc.VersionCreationResult;
|
||||
@ -178,7 +180,7 @@ public class DefaultGitRepositoryService implements GitRepositoryService {
|
||||
}
|
||||
|
||||
private EntityVersion checkVersion(TenantId tenantId, String branch, String versionId) throws Exception {
|
||||
return listVersions(tenantId, branch, null).stream()
|
||||
return listVersions(tenantId, branch, null, new PageLink(Integer.MAX_VALUE)).getData().stream()
|
||||
.filter(version -> version.getId().equals(versionId))
|
||||
.findFirst().orElseThrow(() -> new IllegalArgumentException("Version not found"));
|
||||
}
|
||||
@ -189,11 +191,9 @@ public class DefaultGitRepositoryService implements GitRepositoryService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<EntityVersion> listVersions(TenantId tenantId, String branch, String path) throws Exception {
|
||||
public PageData<EntityVersion> listVersions(TenantId tenantId, String branch, String path, PageLink pageLink) throws Exception {
|
||||
GitRepository repository = checkRepository(tenantId);
|
||||
return repository.listCommits(branch, path, Integer.MAX_VALUE).stream()
|
||||
.map(this::toVersion)
|
||||
.collect(Collectors.toList());
|
||||
return repository.listCommits(branch, path, pageLink).mapData(this::toVersion);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -15,19 +15,13 @@
|
||||
*/
|
||||
package org.thingsboard.server.service.sync.vc;
|
||||
|
||||
import com.google.common.collect.Iterables;
|
||||
import com.google.common.collect.Streams;
|
||||
import lombok.Data;
|
||||
import lombok.Getter;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.sshd.common.util.security.SecurityUtils;
|
||||
import org.eclipse.jgit.api.CloneCommand;
|
||||
import org.eclipse.jgit.api.Git;
|
||||
import org.eclipse.jgit.api.GitCommand;
|
||||
import org.eclipse.jgit.api.ListBranchCommand;
|
||||
import org.eclipse.jgit.api.LogCommand;
|
||||
import org.eclipse.jgit.api.LsRemoteCommand;
|
||||
import org.eclipse.jgit.api.ResetCommand;
|
||||
import org.eclipse.jgit.api.TransportCommand;
|
||||
import org.eclipse.jgit.api.*;
|
||||
import org.eclipse.jgit.api.errors.GitAPIException;
|
||||
import org.eclipse.jgit.lib.Constants;
|
||||
import org.eclipse.jgit.lib.ObjectId;
|
||||
@ -45,6 +39,8 @@ import org.eclipse.jgit.transport.sshd.SshdSessionFactory;
|
||||
import org.eclipse.jgit.transport.sshd.SshdSessionFactoryBuilder;
|
||||
import org.eclipse.jgit.treewalk.TreeWalk;
|
||||
import org.eclipse.jgit.treewalk.filter.PathFilter;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntitiesVersionControlSettings;
|
||||
import org.thingsboard.server.common.data.sync.vc.VersionControlAuthMethod;
|
||||
|
||||
@ -59,6 +55,7 @@ import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class GitRepository {
|
||||
@ -157,27 +154,25 @@ public class GitRepository {
|
||||
.distinct().collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public List<Commit> listCommits(String branch, int limit) throws IOException, GitAPIException {
|
||||
return listCommits(branch, null, limit);
|
||||
public PageData<Commit> listCommits(String branch, PageLink pageLink) throws IOException, GitAPIException {
|
||||
return listCommits(branch, null, pageLink);
|
||||
}
|
||||
|
||||
public List<Commit> listCommits(String branch, String path, int limit) throws IOException, GitAPIException {
|
||||
public PageData<Commit> listCommits(String branch, String path, PageLink pageLink) throws IOException, GitAPIException {
|
||||
ObjectId branchId = resolve("origin/" + branch);
|
||||
if (branchId == null) {
|
||||
throw new IllegalArgumentException("Branch not found");
|
||||
}
|
||||
LogCommand command = git.log()
|
||||
.add(branchId).setMaxCount(limit)
|
||||
.add(branchId)
|
||||
.setRevFilter(RevFilter.NO_MERGES);
|
||||
if (StringUtils.isNotEmpty(path)) {
|
||||
command.addPath(path);
|
||||
}
|
||||
return Streams.stream(execute(command))
|
||||
.map(this::toCommit)
|
||||
.collect(Collectors.toList());
|
||||
Iterable<RevCommit> commits = execute(command);
|
||||
return iterableToPageData(commits, this::toCommit, pageLink);
|
||||
}
|
||||
|
||||
|
||||
public List<String> listFilesAtCommit(String commitId) throws IOException {
|
||||
return listFilesAtCommit(commitId, null);
|
||||
}
|
||||
@ -295,6 +290,23 @@ public class GitRepository {
|
||||
return command.call();
|
||||
}
|
||||
|
||||
private static <T,R> PageData<R> iterableToPageData (Iterable<T> iterable, Function<? super T, ? extends R> mapper, PageLink pageLink) {
|
||||
int totalElements = Iterables.size(iterable);
|
||||
int totalPages = pageLink.getPageSize() > 0 ? (int) Math.ceil((float) totalElements / pageLink.getPageSize()) : 1;
|
||||
int startIndex = pageLink.getPageSize() * pageLink.getPage();
|
||||
int limit = startIndex + pageLink.getPageSize();
|
||||
iterable = Iterables.limit(iterable, limit);
|
||||
if (startIndex < totalElements) {
|
||||
iterable = Iterables.skip(iterable, startIndex);
|
||||
} else {
|
||||
iterable = Collections.emptyList();
|
||||
}
|
||||
List<R> data = Streams.stream(iterable).map(mapper)
|
||||
.collect(Collectors.toList());
|
||||
boolean hasNext = pageLink.getPageSize() > 0 && totalElements > startIndex + data.size();
|
||||
return new PageData<>(data, totalPages, totalElements, hasNext);
|
||||
}
|
||||
|
||||
private static void configureTransportCommand(TransportCommand transportCommand, CredentialsProvider credentialsProvider, SshdSessionFactory sshSessionFactory) {
|
||||
if (credentialsProvider != null) {
|
||||
transportCommand.setCredentialsProvider(credentialsProvider);
|
||||
|
||||
@ -16,6 +16,8 @@
|
||||
package org.thingsboard.server.service.sync.vc;
|
||||
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntitiesVersionControlSettings;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntityVersion;
|
||||
import org.thingsboard.server.common.data.sync.vc.VersionCreationResult;
|
||||
@ -28,7 +30,7 @@ public interface GitRepositoryService {
|
||||
|
||||
void prepareCommit(PendingCommit pendingCommit);
|
||||
|
||||
List<EntityVersion> listVersions(TenantId tenantId, String branch, String path) throws Exception;
|
||||
PageData<EntityVersion> listVersions(TenantId tenantId, String branch, String path, PageLink pageLink) throws Exception;
|
||||
|
||||
List<VersionedEntityInfo> listEntitiesAtVersion(TenantId tenantId, String branch, String versionId, String path) throws Exception;
|
||||
|
||||
|
||||
@ -19,6 +19,8 @@ import org.thingsboard.server.common.data.EntityType;
|
||||
import org.thingsboard.server.common.data.ExportableEntity;
|
||||
import org.thingsboard.server.common.data.id.EntityId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.page.PageData;
|
||||
import org.thingsboard.server.common.data.page.PageLink;
|
||||
import org.thingsboard.server.common.data.sync.ie.EntityExportData;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntitiesVersionControlSettings;
|
||||
import org.thingsboard.server.common.data.sync.vc.EntityVersion;
|
||||
@ -44,11 +46,11 @@ public interface GitVersionControlService {
|
||||
|
||||
VersionCreationResult push(PendingCommit commit);
|
||||
|
||||
List<EntityVersion> listVersions(TenantId tenantId, String branch);
|
||||
PageData<EntityVersion> listVersions(TenantId tenantId, String branch, PageLink pageLink);
|
||||
|
||||
List<EntityVersion> listVersions(TenantId tenantId, String branch, EntityType entityType);
|
||||
PageData<EntityVersion> listVersions(TenantId tenantId, String branch, EntityType entityType, PageLink pageLink);
|
||||
|
||||
List<EntityVersion> listVersions(TenantId tenantId, String branch, EntityId entityId);
|
||||
PageData<EntityVersion> listVersions(TenantId tenantId, String branch, EntityId entityId, PageLink pageLink);
|
||||
|
||||
List<VersionedEntityInfo> listEntitiesAtVersion(TenantId tenantId, String branch, String versionId, EntityType entityType);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user