Github user alopresto commented on a diff in the pull request:
https://github.com/apache/nifi-registry/pull/148#discussion_r236860010
--- Diff:
nifi-registry-core/nifi-registry-data-model/src/main/java/org/apache/nifi/registry/extension/ExtensionBundleVersionMetadata.java
---
@@ -0,0 +1,161 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.nifi.registry.extension;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import org.apache.nifi.registry.link.LinkableEntity;
+
+import javax.validation.constraints.Min;
+import javax.validation.constraints.NotBlank;
+import javax.xml.bind.annotation.XmlRootElement;
+import java.util.Objects;
+
+@ApiModel
+@XmlRootElement
+public class ExtensionBundleVersionMetadata extends LinkableEntity
implements Comparable<ExtensionBundleVersionMetadata> {
+
+ @NotBlank
+ private String id;
+
+ @NotBlank
+ private String extensionBundleId;
+
+ @NotBlank
+ private String bucketId;
+
+ @NotBlank
+ private String version;
+
+ private ExtensionBundleVersionDependency dependency;
+
+ @Min(1)
+ private long timestamp;
+
+ @NotBlank
+ private String author;
+
+ private String description;
+
+ @NotBlank
+ private String sha256Hex;
+
+
+ @ApiModelProperty(value = "The id of this version of the extension
bundle")
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ @ApiModelProperty(value = "The id of the extension bundle this version
is for")
+ public String getExtensionBundleId() {
+ return extensionBundleId;
+ }
+
+ public void setExtensionBundleId(String extensionBundleId) {
+ this.extensionBundleId = extensionBundleId;
+ }
+
+ @ApiModelProperty(value = "The id of the bucket the extension bundle
belongs to", required = true)
+ public String getBucketId() {
+ return bucketId;
+ }
+
+ public void setBucketId(String bucketId) {
+ this.bucketId = bucketId;
+ }
+
+ @ApiModelProperty(value = "The version of the extension bundle")
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+
+ @ApiModelProperty(value = "The optional bundle dependency (i.e.
another bundle this bundle is dependent on)")
+ public ExtensionBundleVersionDependency getDependency() {
+ return dependency;
+ }
+
+ public void setDependency(ExtensionBundleVersionDependency dependency)
{
+ this.dependency = dependency;
+ }
+
+ @ApiModelProperty(value = "The timestamp of the create date of this
version")
+ public long getTimestamp() {
+ return timestamp;
+ }
+
+ public void setTimestamp(long timestamp) {
+ this.timestamp = timestamp;
+ }
+
+ @ApiModelProperty(value = "The identity that created this version")
+ public String getAuthor() {
--- End diff --
Understood. I think that long-term, we probably need to re-evaluate how
that is being done, as the identities between NiFi and NiFi Registry may not
always match.
---