[#1580] Software Module & Distribution Set lock: add lock at rest level (#1646)

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
This commit is contained in:
Avgustin Marinov
2024-02-15 11:46:06 +02:00
committed by GitHub
parent e535420065
commit 850fa3507f
17 changed files with 123 additions and 35 deletions

View File

@@ -10,12 +10,15 @@
package org.eclipse.hawkbit.repository.builder;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Null;
import jakarta.validation.constraints.Size;
import org.eclipse.hawkbit.repository.model.DistributionSet;
import org.eclipse.hawkbit.repository.model.NamedEntity;
import org.eclipse.hawkbit.repository.model.NamedVersionedEntity;
import java.util.Optional;
/**
* Builder to update an existing {@link DistributionSet} entry. Defines all
* fields that can be updated.
@@ -23,30 +26,32 @@ import org.eclipse.hawkbit.repository.model.NamedVersionedEntity;
*/
public interface DistributionSetUpdate {
/**
* @param name
* for {@link DistributionSet#getName()}
* @param name for {@link DistributionSet#getName()}
* @return updated builder instance
*/
DistributionSetUpdate name(@Size(min = 1, max = NamedEntity.NAME_MAX_SIZE) @NotNull String name);
/**
* @param version
* for {@link DistributionSet#getVersion()}
* @param version for {@link DistributionSet#getVersion()}
* @return updated builder instance
*/
DistributionSetUpdate version(@Size(min = 1, max = NamedVersionedEntity.VERSION_MAX_SIZE) @NotNull String version);
/**
* @param description
* for {@link DistributionSet#getDescription()}
* @param description for {@link DistributionSet#getDescription()}
* @return updated builder instance
*/
DistributionSetUpdate description(@Size(max = NamedEntity.DESCRIPTION_MAX_SIZE) String description);
/**
* @param requiredMigrationStep
* for {@link DistributionSet#isRequiredMigrationStep()}
* @param locked update request if any. If not empty shall be <code>true</code>
* @return updated builder instance
*/
DistributionSetUpdate locked(@Null Boolean locked);
/**
* @param requiredMigrationStep for {@link DistributionSet#isRequiredMigrationStep()}
* @return updated builder instance
*/
DistributionSetUpdate requiredMigrationStep(Boolean requiredMigrationStep);
}
}

View File

@@ -28,4 +28,4 @@ public interface SoftwareModuleBuilder {
* @return builder instance
*/
SoftwareModuleCreate create();
}
}

View File

@@ -9,6 +9,8 @@
*/
package org.eclipse.hawkbit.repository.builder;
import jakarta.annotation.Nullable;
import jakarta.validation.constraints.Null;
import jakarta.validation.constraints.Size;
import org.eclipse.hawkbit.repository.model.NamedEntity;
@@ -34,4 +36,10 @@ public interface SoftwareModuleUpdate {
* @return updated builder instance
*/
SoftwareModuleUpdate vendor(@Size(max = SoftwareModule.VENDOR_MAX_SIZE) String vendor);
}
/**
* @param locked update request if any. If not empty shall be <code>true</code>
* @return updated builder instance
*/
SoftwareModuleUpdate locked(@Null Boolean locked);
}