Merge branch '2798-go-keep-client' into 1885-keep-proxy refs #1885
[arvados.git] / services / api / lib / has_uuid.rb
index 21369d199eed2ec550a22be7133fa9550a24520a..3bd330edca59808bd3fbbe21f49725c687e5e7c7 100644 (file)
@@ -28,7 +28,15 @@ module HasUuid
 
   def assign_uuid
     return true if !self.respond_to_uuid?
-    return true if uuid and current_user and current_user.is_admin
+    if (uuid.is_a?(String) and uuid.length>0 and
+        current_user and current_user.is_admin)
+      return true
+    end
     self.uuid = self.class.generate_uuid
   end
+
+  def destroy_permission_links
+    Link.destroy_all(['link_class=? and (head_uuid=? or tail_uuid=?)',
+                      'permission', uuid, uuid])
+  end
 end