Skip to content

Commit

Permalink
[Fixes #7842] Rename layer to dataset (#7841)
Browse files Browse the repository at this point in the history
* First draft of layer renaming into dataset

* First draft of layer renaming into dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* merge with master

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset

* Renaming layer to dataset: add missing migration files

* Renaming layer to dataset

* Fix migration

* Fix migration files

* Fix migration files

* Fix migration files

* Rename Layer to Dataset

* Rename Layer to Dataset

* Fix tests

* Fix tests

* fix harvester handler method name

* align migrations

* - Fixup migrations, models and tests

* - Revert wrong migration

Co-authored-by: giohappy <[email protected]>
Co-authored-by: afabiani <[email protected]>
  • Loading branch information
3 people authored Jul 22, 2021
1 parent 3692cc5 commit b140576
Show file tree
Hide file tree
Showing 300 changed files with 3,922 additions and 3,754 deletions.
24 changes: 12 additions & 12 deletions geonode/api/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
from geonode.base.models import Region
from geonode.base.models import HierarchicalKeyword
from geonode.base.models import ThesaurusKeywordLabel
from geonode.layers.models import Layer, Style
from geonode.layers.models import Dataset, Style
from geonode.maps.models import Map
from geonode.geoapps.models import GeoApp
from geonode.documents.models import Document
Expand All @@ -61,7 +61,7 @@
from geonode.security.utils import get_visible_resources

FILTER_TYPES = {
'layer': Layer,
'dataset': Dataset,
'map': Map,
'document': Document,
'geoapp': GeoApp
Expand Down Expand Up @@ -135,7 +135,7 @@ def to_json(self, data, options=None):
class TypeFilteredResource(ModelResource):
""" Common resource used to apply faceting to categories, keywords, and
regions based on the type passed as query parameter in the form
type:layer/map/document"""
type:dataset/map/document"""

count = fields.IntegerField()

Expand Down Expand Up @@ -277,10 +277,10 @@ class TopicCategoryResource(TypeFilteredResource):
"""Category api"""
layers_count = fields.IntegerField(default=0)

def dehydrate_layers_count(self, bundle):
def dehydrate_datasets_count(self, bundle):
request = bundle.request
obj_with_perms = get_objects_for_user(request.user,
'base.view_resourcebase').filter(polymorphic_ctype__model='layer')
'base.view_resourcebase').filter(polymorphic_ctype__model='dataset')
filter_set = bundle.obj.resourcebase_set.filter(id__in=obj_with_perms.values('id')).filter(metadata_only=False)

if not settings.SKIP_PERMS_FILTER:
Expand Down Expand Up @@ -499,9 +499,9 @@ def dehydrate_email(self, bundle):

return email

def dehydrate_layers_count(self, bundle):
def dehydrate_datasets_count(self, bundle):
obj_with_perms = get_objects_for_user(bundle.request.user,
'base.view_resourcebase').filter(polymorphic_ctype__model='layer')
'base.view_resourcebase').filter(polymorphic_ctype__model='dataset')
return bundle.obj.resourcebase_set.filter(id__in=obj_with_perms.values('id')).filter(metadata_only=False)\
.distinct().count()

Expand Down Expand Up @@ -639,11 +639,11 @@ class GeoserverStyleResource(ModelResource):
use_in='detail')
name = fields.CharField(attribute='name')
title = fields.CharField(attribute='sld_title')
# layer_default_style is polymorphic, so it will have many to many
# dataset_default_style is polymorphic, so it will have many to many
# relation
layer = fields.ManyToManyField(
'geonode.api.resourcebase_api.LayerResource',
attribute='layer_default_style',
attribute='dataset_default_style',
null=True)
version = fields.CharField(
attribute='sld_version',
Expand Down Expand Up @@ -671,10 +671,10 @@ def build_filters(self, filters=None, **kwargs):
"""Apply custom filters for layer."""
filters = super().build_filters(
filters, **kwargs)
# Convert layer__ filters into layer_styles__layer__
# Convert dataset__ filters into dataset_styles__dataset__
updated_filters = {}
for key, value in filters.items():
key = key.replace('layer__', 'layer_default_style__')
key = key.replace('dataset__', 'dataset_default_style__')
updated_filters[key] = value
return updated_filters

Expand Down Expand Up @@ -743,7 +743,7 @@ def _get_resource_counts(request, resourcebase_filter_kwargs):
)
qs = values.annotate(counts=Count('polymorphic_ctype__model'))
types = [
'layer',
'dataset',
'document',
'map',
'geoapp',
Expand Down
4 changes: 2 additions & 2 deletions geonode/api/authorization.py
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ class GeoNodeStyleAuthorization(GeoNodeAuthorization):
def filter_by_resource_ids(self, object_list, permitted_ids):
"""Filter Style queryset by permitted resource ids."""
if check_ogc_backend(geoserver.BACKEND_PACKAGE):
return object_list.filter(layer_styles__id__in=permitted_ids)
return object_list.filter(dataset_styles__id__in=permitted_ids)

def read_list(self, object_list, bundle):
permitted_ids = get_objects_for_user(
Expand All @@ -143,7 +143,7 @@ def read_list(self, object_list, bundle):
def delete_detail(self, object_list, bundle):
permitted_ids = get_objects_for_user(
bundle.request.user,
'layer.change_layer_style').values('id')
'layer.change_dataset_style').values('id')

resource_obj = bundle.obj.get_self_resource()
return resource_obj in permitted_ids
Expand Down
30 changes: 15 additions & 15 deletions geonode/api/resourcebase_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
from tastypie.utils.mime import build_content_type

from geonode import get_version, geoserver
from geonode.layers.models import Layer
from geonode.layers.models import Dataset
from geonode.maps.models import Map
from geonode.geoapps.models import GeoApp
from geonode.documents.models import Document
Expand Down Expand Up @@ -673,7 +673,7 @@ class Meta(CommonMetaApi):

class LayerResource(CommonModelApi):

"""Layer API"""
"""Dataset API"""
links = fields.ListField(
attribute='links',
null=True,
Expand Down Expand Up @@ -813,8 +813,8 @@ def build_bundle(
def populate_object(self, obj):
"""Populate results with necessary fields
:param obj: Layer obj
:type obj: Layer
:param obj: Dataset obj
:type obj: Dataset
:return:
"""
return obj
Expand All @@ -825,8 +825,8 @@ def populate_object(self, obj):

class Meta(CommonMetaApi):
paginator_class = CrossSiteXHRPaginator
queryset = Layer.objects.distinct().order_by('-date')
resource_name = 'layers'
queryset = Dataset.objects.distinct().order_by('-date')
resource_name = 'datasets'
detail_uri_name = 'id'
include_resource_uri = True
allowed_methods = ['get', 'patch']
Expand Down Expand Up @@ -890,9 +890,9 @@ def format_objects(self, objects):
formatted_obj['online'] = True

# get map layers
map_layers = obj.layers
formatted_layers = []
map_layer_fields = [
map_datasets = obj.datasets
formatted_datasets = []
map_dataset_fields = [
'id',
'stack_order',
'format',
Expand All @@ -902,15 +902,15 @@ def format_objects(self, objects):
'visibility',
'transparent',
'ows_url',
'layer_params',
'dataset_params',
'source_params',
'local'
]
for layer in map_layers:
formatted_map_layer = model_to_dict(
layer, fields=map_layer_fields)
formatted_layers.append(formatted_map_layer)
formatted_obj['layers'] = formatted_layers
for layer in map_datasets:
formatted_map_dataset = model_to_dict(
layer, fields=map_dataset_fields)
formatted_datasets.append(formatted_map_dataset)
formatted_obj['layers'] = formatted_datasets

# replace thumbnail_url with curated_thumbs
if hasattr(obj, 'curatedthumbnail'):
Expand Down
Loading

0 comments on commit b140576

Please sign in to comment.