func()

in internal/subscriber/subscribe.go [209:227]


func (s *SubscriberService) handleDelete(inMetadata *model.Metadata) error {
	// Check if metadata exists
	existingMetadata, err := s.metadataRepo.Get(inMetadata.Bucket, inMetadata.Name)
	if err != nil {
		return err
	}

	// Skip if existing metadata is newer
	if existingMetadata.Updated.After(inMetadata.Updated) {
		return nil
	}

	if err := s.metadataRepo.Delete(inMetadata.Bucket, inMetadata.Name); err != nil {
		return err
	}

	return s.directoryRepo.UpsertParentDirs(repo.StorageClass(inMetadata.StorageClass), inMetadata.Bucket,
		inMetadata.Name, -inMetadata.Size, -1)
}