Search in sources :

Example 6 with Bucket

use of org.apache.nifi.registry.bucket.Bucket in project nifi by apache.

the class BucketsResult method writeSimpleResult.

@Override
protected void writeSimpleResult(final PrintStream output) {
    if (buckets.isEmpty()) {
        return;
    }
    final Table table = new Table.Builder().column("#", 3, 3, false).column("Name", 20, 36, true).column("Id", 36, 36, false).column("Description", 11, 40, true).build();
    for (int i = 0; i < buckets.size(); ++i) {
        final Bucket bucket = buckets.get(i);
        table.addRow(String.valueOf(i + 1), bucket.getName(), bucket.getIdentifier(), bucket.getDescription());
    }
    final TableWriter tableWriter = new DynamicTableWriter();
    tableWriter.write(table, output);
}
Also used : Table(org.apache.nifi.toolkit.cli.impl.result.writer.Table) DynamicTableWriter(org.apache.nifi.toolkit.cli.impl.result.writer.DynamicTableWriter) TableWriter(org.apache.nifi.toolkit.cli.impl.result.writer.TableWriter) Bucket(org.apache.nifi.registry.bucket.Bucket) DynamicTableWriter(org.apache.nifi.toolkit.cli.impl.result.writer.DynamicTableWriter)

Example 7 with Bucket

use of org.apache.nifi.registry.bucket.Bucket in project nifi by apache.

the class BucketsResult method createReferenceResolver.

@Override
public ReferenceResolver createReferenceResolver(final Context context) {
    final Map<Integer, Bucket> backRefs = new HashMap<>();
    final AtomicInteger position = new AtomicInteger(0);
    buckets.forEach(b -> backRefs.put(position.incrementAndGet(), b));
    return new ReferenceResolver() {

        @Override
        public ResolvedReference resolve(final CommandOption option, final Integer position) {
            final Bucket bucket = backRefs.get(position);
            if (bucket != null) {
                return new ResolvedReference(option, position, bucket.getName(), bucket.getIdentifier());
            } else {
                return null;
            }
        }

        @Override
        public boolean isEmpty() {
            return backRefs.isEmpty();
        }
    };
}
Also used : AtomicInteger(java.util.concurrent.atomic.AtomicInteger) ResolvedReference(org.apache.nifi.toolkit.cli.api.ResolvedReference) CommandOption(org.apache.nifi.toolkit.cli.impl.command.CommandOption) Bucket(org.apache.nifi.registry.bucket.Bucket) HashMap(java.util.HashMap) AtomicInteger(java.util.concurrent.atomic.AtomicInteger) ReferenceResolver(org.apache.nifi.toolkit.cli.api.ReferenceResolver)

Example 8 with Bucket

use of org.apache.nifi.registry.bucket.Bucket in project nifi by apache.

the class TestBucketsResult method testWritingSimpleBucketsResult.

@Test
public void testWritingSimpleBucketsResult() throws IOException {
    final Bucket b1 = new Bucket();
    b1.setName("Bucket 1");
    b1.setDescription("This is bucket 1");
    b1.setIdentifier(UUID.fromString("ea752054-22c6-4fc0-b851-967d9a3837cb").toString());
    final Bucket b2 = new Bucket();
    b2.setName("Bucket 2");
    b2.setDescription(null);
    b2.setIdentifier(UUID.fromString("ddf5f289-7502-46df-9798-4b0457c1816b").toString());
    final List<Bucket> buckets = new ArrayList<>();
    buckets.add(b1);
    buckets.add(b2);
    final BucketsResult result = new BucketsResult(ResultType.SIMPLE, buckets);
    result.write(printStream);
    final String resultOut = new String(outputStream.toByteArray(), StandardCharsets.UTF_8);
    // System.out.println(resultOut);
    final String expected = "\n" + "#   Name       Id                                     Description        \n" + "-   --------   ------------------------------------   ----------------   \n" + "1   Bucket 1   ea752054-22c6-4fc0-b851-967d9a3837cb   This is bucket 1   \n" + "2   Bucket 2   ddf5f289-7502-46df-9798-4b0457c1816b   (empty)            \n" + "\n";
    Assert.assertEquals(expected, resultOut);
}
Also used : Bucket(org.apache.nifi.registry.bucket.Bucket) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 9 with Bucket

use of org.apache.nifi.registry.bucket.Bucket in project nifi-registry by apache.

the class TestRegistryService method testUpdateBucketPartial.

@Test
public void testUpdateBucketPartial() {
    final BucketEntity bucketToUpdate = new BucketEntity();
    bucketToUpdate.setId("b1");
    bucketToUpdate.setName("My Bucket");
    bucketToUpdate.setDescription("This is my bucket");
    bucketToUpdate.setCreated(new Date());
    when(metadataService.getBucketById(bucketToUpdate.getId())).thenReturn(bucketToUpdate);
    doAnswer(updateBucketAnswer()).when(metadataService).updateBucket(any(BucketEntity.class));
    final Bucket updatedBucket = new Bucket();
    updatedBucket.setIdentifier(bucketToUpdate.getId());
    updatedBucket.setName("Updated Name");
    updatedBucket.setDescription(null);
    // name should be updated but description should not be changed
    final Bucket result = registryService.updateBucket(updatedBucket);
    assertNotNull(result);
    assertEquals(updatedBucket.getName(), result.getName());
    assertEquals(bucketToUpdate.getDescription(), result.getDescription());
}
Also used : BucketEntity(org.apache.nifi.registry.db.entity.BucketEntity) Bucket(org.apache.nifi.registry.bucket.Bucket) Date(java.util.Date) Test(org.junit.Test)

Example 10 with Bucket

use of org.apache.nifi.registry.bucket.Bucket in project nifi-registry by apache.

the class TestRegistryService method testCreateBucketWithSameName.

@Test(expected = IllegalStateException.class)
public void testCreateBucketWithSameName() {
    final Bucket bucket = new Bucket();
    bucket.setName("My Bucket");
    bucket.setDescription("This is my bucket.");
    final BucketEntity existingBucket = new BucketEntity();
    existingBucket.setId("b1");
    existingBucket.setName("My Bucket");
    existingBucket.setCreated(new Date());
    when(metadataService.getBucketsByName(bucket.getName())).thenReturn(Collections.singletonList(existingBucket));
    // should throw exception since a bucket with the same name exists
    registryService.createBucket(bucket);
}
Also used : BucketEntity(org.apache.nifi.registry.db.entity.BucketEntity) Bucket(org.apache.nifi.registry.bucket.Bucket) Date(java.util.Date) Test(org.junit.Test)

Aggregations

Bucket (org.apache.nifi.registry.bucket.Bucket)42 Test (org.junit.Test)19 VersionedFlow (org.apache.nifi.registry.flow.VersionedFlow)14 BucketEntity (org.apache.nifi.registry.db.entity.BucketEntity)11 VersionedFlowSnapshot (org.apache.nifi.registry.flow.VersionedFlowSnapshot)11 VersionedFlowSnapshotMetadata (org.apache.nifi.registry.flow.VersionedFlowSnapshotMetadata)11 Date (java.util.Date)10 ApiOperation (io.swagger.annotations.ApiOperation)9 ApiResponses (io.swagger.annotations.ApiResponses)9 Consumes (javax.ws.rs.Consumes)9 Produces (javax.ws.rs.Produces)9 Path (javax.ws.rs.Path)8 VersionedProcessGroup (org.apache.nifi.registry.flow.VersionedProcessGroup)8 Response (javax.ws.rs.core.Response)6 RevisionDTO (org.apache.nifi.web.api.dto.RevisionDTO)6 VersionControlInformationDTO (org.apache.nifi.web.api.dto.VersionControlInformationDTO)6 HashMap (java.util.HashMap)5 POST (javax.ws.rs.POST)5 ComponentAuthorizable (org.apache.nifi.authorization.ComponentAuthorizable)5 ProcessGroupAuthorizable (org.apache.nifi.authorization.ProcessGroupAuthorizable)5