Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
These changes fix a conflict in method resolution for the group and form dataset by splitting the plugin, and introduce the concept of a global and local package names to support our S3 cloud storage convention, as package names may be reused across organizations.
Global package names are globally unique within CKAN, they identify the package and can be used to perform all CRUD operations on a package.
Local package names are only unique within the set of an organization's datasets. They can only be used to create packages as the implementation internally maps the name into a global one.
The transformation is based on prefixing the organization name to the local package name and separating them with '--' to create a globally unique name (since organization names are unique).
This mapping is completely transparent to the users and doesn't require special handling on extensions, unless an extension needs to map between S3 storage path and package names within ckan, in which case 3 helper methods are provided to convert between the two.