tardis.tardis_portal package¶
Subpackages¶
- tardis.tardis_portal.auth package
- Submodules
- tardis.tardis_portal.auth.authentication module
- tardis.tardis_portal.auth.authorisation module
- tardis.tardis_portal.auth.authservice module
- tardis.tardis_portal.auth.decorators module
- tardis.tardis_portal.auth.fix_circular module
- tardis.tardis_portal.auth.interfaces module
- tardis.tardis_portal.auth.ldap_auth module
- tardis.tardis_portal.auth.localdb_auth module
- tardis.tardis_portal.auth.token_auth module
- tardis.tardis_portal.auth.utils module
- Module contents
- tardis.tardis_portal.filters package
- tardis.tardis_portal.management package
- Subpackages
- tardis.tardis_portal.management.commands package
- Submodules
- tardis.tardis_portal.management.commands.createuser module
- tardis.tardis_portal.management.commands.dumpschemas module
- tardis.tardis_portal.management.commands.loadschemas module
- tardis.tardis_portal.management.commands.rmexperiment module
- tardis.tardis_portal.management.commands.runfilters module
- Module contents
- tardis.tardis_portal.management.commands package
- Module contents
- Subpackages
- tardis.tardis_portal.migrations package
- Submodules
- tardis.tardis_portal.migrations.0001_initial module
- tardis.tardis_portal.migrations.0001_squashed_0011_auto_20160505_1643 module
- tardis.tardis_portal.migrations.0002_auto_20150528_1128 module
- tardis.tardis_portal.migrations.0003_auto_20150907_1315 module
- tardis.tardis_portal.migrations.0004_storageboxoption_value_type module
- tardis.tardis_portal.migrations.0005_datafile_add_size_int_column module
- tardis.tardis_portal.migrations.0006_datafile_remove_size_string_column module
- tardis.tardis_portal.migrations.0007_remove_parameter_string_value_index module
- tardis.tardis_portal.migrations.0008_string_value_partial_index_postgres module
- tardis.tardis_portal.migrations.0009_auto_20160128_1119 module
- tardis.tardis_portal.migrations.0010_auto_20160503_1443 module
- tardis.tardis_portal.migrations.0011_auto_20160505_1643 module
- tardis.tardis_portal.migrations.0012_userauthentication_approved module
- tardis.tardis_portal.migrations.0013_auto_20181002_1136 module
- tardis.tardis_portal.migrations.0014_auto_20181002_1154 module
- tardis.tardis_portal.migrations.0015_dataset_created_time module
- Module contents
- tardis.tardis_portal.models package
- Submodules
- tardis.tardis_portal.models.access_control module
- tardis.tardis_portal.models.datafile module
- tardis.tardis_portal.models.dataset module
- tardis.tardis_portal.models.experiment module
- tardis.tardis_portal.models.facility module
- tardis.tardis_portal.models.hooks module
- tardis.tardis_portal.models.instrument module
- tardis.tardis_portal.models.jti module
- tardis.tardis_portal.models.license module
- tardis.tardis_portal.models.parameters module
- tardis.tardis_portal.models.storage module
- tardis.tardis_portal.models.token module
- Module contents
- tardis.tardis_portal.publish package
- tardis.tardis_portal.storage package
- tardis.tardis_portal.templatetags package
- Submodules
- tardis.tardis_portal.templatetags.approved_user_tags module
- tardis.tardis_portal.templatetags.basiccomparisonfilters module
- tardis.tardis_portal.templatetags.bleach_tag module
- tardis.tardis_portal.templatetags.capture module
- tardis.tardis_portal.templatetags.dataset_tags module
- tardis.tardis_portal.templatetags.dynurl module
- tardis.tardis_portal.templatetags.experiment_tags module
- tardis.tardis_portal.templatetags.experimentstats module
- tardis.tardis_portal.templatetags.facility_tags module
- tardis.tardis_portal.templatetags.feed module
- tardis.tardis_portal.templatetags.formfieldfilters module
- tardis.tardis_portal.templatetags.lookupfilters module
- tardis.tardis_portal.templatetags.pagination module
- tardis.tardis_portal.templatetags.xmldate module
- Module contents
- tardis.tardis_portal.tests package
- Subpackages
- Submodules
- tardis.tardis_portal.tests.ldap_ldif module
- tardis.tardis_portal.tests.mock_vbl_auth module
- tardis.tardis_portal.tests.mock_vbl_download module
- tardis.tardis_portal.tests.slapd module
- tardis.tardis_portal.tests.test_api module
- tardis.tardis_portal.tests.test_authentication module
- tardis.tardis_portal.tests.test_authorisation module
- tardis.tardis_portal.tests.test_authservice module
- tardis.tardis_portal.tests.test_collectstatic module
- tardis.tardis_portal.tests.test_createuser module
- tardis.tardis_portal.tests.test_download module
- tardis.tardis_portal.tests.test_download_apikey module
- tardis.tardis_portal.tests.test_dumpschemas module
- tardis.tardis_portal.tests.test_facility_overview module
- tardis.tardis_portal.tests.test_forms module
- tardis.tardis_portal.tests.test_iiif module
- tardis.tardis_portal.tests.test_ldap module
- tardis.tardis_portal.tests.test_loadschemas module
- tardis.tardis_portal.tests.test_models module
- tardis.tardis_portal.tests.test_parametersets module
- tardis.tardis_portal.tests.test_publishservice module
- tardis.tardis_portal.tests.test_rmexperiment module
- tardis.tardis_portal.tests.test_storage module
- tardis.tardis_portal.tests.test_tar_download module
- tardis.tardis_portal.tests.test_tasks module
- tardis.tardis_portal.tests.test_tokens module
- tardis.tardis_portal.tests.test_views module
- tardis.tardis_portal.tests.tests module
- tardis.tardis_portal.tests.urls module
- Module contents
- tardis.tardis_portal.views package
- Submodules
- tardis.tardis_portal.views.ajax_actions module
- tardis.tardis_portal.views.ajax_json module
- tardis.tardis_portal.views.ajax_pages module
- tardis.tardis_portal.views.authentication module
- tardis.tardis_portal.views.authorisation module
- tardis.tardis_portal.views.facilities module
- tardis.tardis_portal.views.images module
- tardis.tardis_portal.views.machine module
- tardis.tardis_portal.views.pages module
- tardis.tardis_portal.views.parameters module
- tardis.tardis_portal.views.upload module
- tardis.tardis_portal.views.utils module
- Module contents
Submodules¶
tardis.tardis_portal.ParameterSetManager module¶
-
class
tardis.tardis_portal.ParameterSetManager.
ParameterSetManager
(parameterset=None, parentObject=None, schema=None)¶ Bases:
object
-
blank_param
= None¶
-
delete_all_params
()¶
-
delete_params
(parname)¶
-
get_param
(parname, value=False)¶
-
get_params
(parname, value=False)¶
-
get_schema
()¶
-
new_param
(parname, value, fullparname=None)¶
-
parameters
= None¶
-
parameterset
= None¶
-
set_param
(parname, value, fullparname=None, example_value=None)¶
-
set_param_list
(parname, value_list, fullparname=None)¶
-
set_params_from_dict
(dict)¶
-
tardis.tardis_portal.admin module¶
-
class
tardis.tardis_portal.admin.
DataFileObjectInline
(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline
-
extra
= 0¶
-
form
¶ alias of
DataFileObjectInlineForm
-
media
¶
-
model
¶ alias of
tardis.tardis_portal.models.datafile.DataFileObject
-
-
class
tardis.tardis_portal.admin.
DataFileObjectInlineForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= '__all__'¶
-
model
¶ alias of
tardis.tardis_portal.models.datafile.DataFileObject
-
widgets
= {'uri': <django.forms.widgets.TextInput object at 0x7fbcb21cc8d0>}¶
-
-
base_fields
= {'datafile': <django.forms.models.ModelChoiceField object at 0x7fbcb21db210>, 'last_verified_time': <django.forms.fields.DateTimeField object at 0x7fbcb21db710>, 'storage_box': <django.forms.models.ModelChoiceField object at 0x7fbcb21db350>, 'uri': <django.forms.fields.CharField object at 0x7fbcb21db4d0>, 'verified': <django.forms.fields.BooleanField object at 0x7fbcb21db690>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.admin.
DatafileAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
form
¶ alias of
DatafileAdminForm
-
inlines
= [<class 'tardis.tardis_portal.admin.DataFileObjectInline'>]¶
-
media
¶
-
search_fields
= ['filename', 'id']¶
-
-
class
tardis.tardis_portal.admin.
DatafileAdminForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= '__all__'¶
-
model
¶
-
widgets
= {'directory': <django.forms.widgets.TextInput object at 0x7fbcb21db190>}¶
-
-
base_fields
= {'created_time': <django.forms.fields.DateTimeField object at 0x7fbcb21dbd10>, 'dataset': <django.forms.models.ModelChoiceField object at 0x7fbcb21b0f10>, 'deleted': <django.forms.fields.BooleanField object at 0x7fbcb2166090>, 'deleted_time': <django.forms.fields.DateTimeField object at 0x7fbcb2166190>, 'directory': <django.forms.fields.CharField object at 0x7fbcb21dbad0>, 'filename': <django.forms.fields.CharField object at 0x7fbcb21db950>, 'md5sum': <django.forms.fields.CharField object at 0x7fbcb21dbed0>, 'mimetype': <django.forms.fields.CharField object at 0x7fbcb21dbe90>, 'modification_time': <django.forms.fields.DateTimeField object at 0x7fbcb21dbdd0>, 'sha512sum': <django.forms.fields.CharField object at 0x7fbcb21dbf90>, 'size': <django.forms.fields.IntegerField object at 0x7fbcb21dbb90>, 'version': <django.forms.fields.IntegerField object at 0x7fbcb21662d0>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.admin.
DatasetAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
media
¶
-
search_fields
= ['description', 'id']¶
-
-
class
tardis.tardis_portal.admin.
ExperimentAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
inlines
= [<class 'tardis.tardis_portal.admin.ObjectACLInline'>]¶
-
media
¶
-
search_fields
= ['title', 'id']¶
-
-
class
tardis.tardis_portal.admin.
ExperimentParameterInline
(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline
-
extra
= 0¶
-
formfield_overrides
= {<class 'django.db.models.fields.TextField'>: {'widget': <class 'django.forms.widgets.TextInput'>}}¶
-
media
¶
-
model
¶ alias of
tardis.tardis_portal.models.parameters.ExperimentParameter
-
-
class
tardis.tardis_portal.admin.
ExperimentParameterSetAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
inlines
= [<class 'tardis.tardis_portal.admin.ExperimentParameterInline'>]¶
-
media
¶
-
-
class
tardis.tardis_portal.admin.
FacilityAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
media
¶
-
search_fields
= ['name']¶
-
-
class
tardis.tardis_portal.admin.
FreeTextSearchFieldAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
media
¶
-
-
class
tardis.tardis_portal.admin.
InstrumentAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
media
¶
-
search_fields
= ['name']¶
-
-
class
tardis.tardis_portal.admin.
InstrumentParameterInline
(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline
-
extra
= 0¶
-
media
¶
-
model
¶ alias of
tardis.tardis_portal.models.parameters.InstrumentParameter
-
-
class
tardis.tardis_portal.admin.
InstrumentParameterSetAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
inlines
= [<class 'tardis.tardis_portal.admin.InstrumentParameterInline'>]¶
-
media
¶
-
-
class
tardis.tardis_portal.admin.
ObjectACLAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
list_display
= ['__str__', 'pluginId', 'entityId', 'canRead', 'canWrite', 'canDelete', 'isOwner']¶
-
media
¶
-
search_fields
= ['content_type', 'object_id']¶
-
-
class
tardis.tardis_portal.admin.
ObjectACLInline
(parent_model, admin_site)¶ Bases:
django.contrib.contenttypes.admin.GenericTabularInline
-
extra
= 0¶
-
media
¶
-
model
¶ alias of
tardis.tardis_portal.models.access_control.ObjectACL
-
-
class
tardis.tardis_portal.admin.
ParameterNameAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
media
¶
-
search_fields
= ['name', 'schema__id']¶
-
-
class
tardis.tardis_portal.admin.
ParameterNameInline
(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline
-
extra
= 0¶
-
media
¶
-
model
¶ alias of
tardis.tardis_portal.models.parameters.ParameterName
-
-
class
tardis.tardis_portal.admin.
SchemaAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
inlines
= [<class 'tardis.tardis_portal.admin.ParameterNameInline'>]¶
-
media
¶
-
search_fields
= ['name', 'namespace']¶
-
-
class
tardis.tardis_portal.admin.
StorageBoxAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
form
¶ alias of
StorageBoxForm
-
inlines
= [<class 'tardis.tardis_portal.admin.StorageBoxOptionInline'>, <class 'tardis.tardis_portal.admin.StorageBoxAttributeInline'>]¶
-
media
¶
-
search_fields
= ['name']¶
-
-
class
tardis.tardis_portal.admin.
StorageBoxAttributeInline
(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline
-
extra
= 0¶
-
form
¶ alias of
StorageBoxAttributeInlineForm
-
media
¶
-
model
¶ alias of
tardis.tardis_portal.models.storage.StorageBoxAttribute
-
-
class
tardis.tardis_portal.admin.
StorageBoxAttributeInlineForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= '__all__'¶
-
model
¶ alias of
tardis.tardis_portal.models.storage.StorageBoxAttribute
-
widgets
= {'key': <django.forms.widgets.TextInput object at 0x7fbcb2186c50>, 'value': <django.forms.widgets.TextInput object at 0x7fbcb2186cd0>}¶
-
-
base_fields
= {'key': <django.forms.fields.CharField object at 0x7fbcb21cc0d0>, 'storage_box': <django.forms.models.ModelChoiceField object at 0x7fbcb2186f50>, 'value': <django.forms.fields.CharField object at 0x7fbcb21cc290>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.admin.
StorageBoxForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= '__all__'¶
-
model
¶
-
widgets
= {'description': <django.forms.widgets.TextInput object at 0x7fbcb21cc790>, 'django_storage_class': <django.forms.widgets.TextInput object at 0x7fbcb21cc390>, 'name': <django.forms.widgets.TextInput object at 0x7fbcb21cc7d0>}¶
-
-
base_fields
= {'description': <django.forms.fields.CharField object at 0x7fbcb21ccd90>, 'django_storage_class': <django.forms.fields.CharField object at 0x7fbcb21cc910>, 'master_box': <django.forms.models.ModelChoiceField object at 0x7fbcb21ccf10>, 'max_size': <django.forms.fields.IntegerField object at 0x7fbcb21cca50>, 'name': <django.forms.fields.CharField object at 0x7fbcb21ccbd0>, 'status': <django.forms.fields.CharField object at 0x7fbcb21ccb50>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.admin.
StorageBoxOptionInline
(parent_model, admin_site)¶ Bases:
django.contrib.admin.options.TabularInline
-
extra
= 0¶
-
form
¶ alias of
StorageBoxOptionInlineForm
-
media
¶
-
model
¶ alias of
tardis.tardis_portal.models.storage.StorageBoxOption
-
-
class
tardis.tardis_portal.admin.
StorageBoxOptionInlineForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= '__all__'¶
-
model
¶ alias of
tardis.tardis_portal.models.storage.StorageBoxOption
-
widgets
= {'key': <django.forms.widgets.TextInput object at 0x7fbcb2186ed0>, 'value': <django.forms.widgets.TextInput object at 0x7fbcb21cc310>}¶
-
-
base_fields
= {'key': <django.forms.fields.CharField object at 0x7fbcb21cc510>, 'storage_box': <django.forms.models.ModelChoiceField object at 0x7fbcb21cc3d0>, 'value': <django.forms.fields.CharField object at 0x7fbcb21cc6d0>, 'value_type': <django.forms.fields.TypedChoiceField object at 0x7fbcb21cc750>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
tardis.tardis_portal.api module¶
RESTful API for MyTardis models and data. Implemented with Tastypie.
-
class
tardis.tardis_portal.api.
ACLAuthorization
¶ Bases:
tastypie.authorization.Authorization
Authorisation class for Tastypie.
-
create_detail
(object_list, bundle)¶
-
create_list
(object_list, bundle)¶
-
delete_detail
(object_list, bundle)¶
-
delete_list
(object_list, bundle)¶
-
read_detail
(object_list, bundle)¶
-
read_list
(object_list, bundle)¶
-
update_detail
(object_list, bundle)¶ Latest TastyPie requires update_detail permissions to be able to create objects. Rather than duplicating code here, we’ll just use the same authorization rules we use for create_detail.
-
update_list
(object_list, bundle)¶
-
-
class
tardis.tardis_portal.api.
DataFileResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
filtering
= {'dataset': 2, 'directory': ('exact', 'startswith'), 'filename': ('exact',)}¶
-
object_class
¶
-
ordering
= ['filename', 'modification_time']¶
-
queryset
¶
-
resource_name
= 'dataset_file'¶
-
-
base_fields
= {'created_time': <tastypie.fields.DateTimeField object at 0x7fbcae886750>, 'datafile': <tastypie.fields.FileField object at 0x7fbcae886210>, 'dataset': <tastypie.fields.ForeignKey object at 0x7fbcae89ef90>, 'deleted': <tastypie.fields.BooleanField object at 0x7fbcae886890>, 'deleted_time': <tastypie.fields.DateTimeField object at 0x7fbcae8868d0>, 'directory': <tastypie.fields.CharField object at 0x7fbcae8866d0>, 'filename': <tastypie.fields.CharField object at 0x7fbcae886690>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae886650>, 'md5sum': <tastypie.fields.CharField object at 0x7fbcae886810>, 'mimetype': <tastypie.fields.CharField object at 0x7fbcae8867d0>, 'modification_time': <tastypie.fields.DateTimeField object at 0x7fbcae886790>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7fbcae8861d0>, 'replicas': <tastypie.fields.ToManyField object at 0x7fbcae886250>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae886610>, 'sha512sum': <tastypie.fields.CharField object at 0x7fbcae886850>, 'size': <tastypie.fields.IntegerField object at 0x7fbcae886710>, 'version': <tastypie.fields.IntegerField object at 0x7fbcae886910>}¶
-
declared_fields
= {'datafile': <tastypie.fields.FileField object at 0x7fbcae886210>, 'dataset': <tastypie.fields.ForeignKey object at 0x7fbcae89ef90>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7fbcae8861d0>, 'replicas': <tastypie.fields.ToManyField object at 0x7fbcae886250>}¶
-
deserialize
(request, data, format=None)¶ from https://github.com/toastdriven/django-tastypie/issues/42 modified to deserialize json sent via POST. Would fail if data is sent in a different format. uses a hack to get back pure json from request.POST
-
download_file
(request, **kwargs)¶ curl needs the -J switch to get the filename right auth needs to be added manually here
-
hydrate
(bundle)¶
-
obj_create
(bundle, **kwargs)¶ Creates a new DataFile object from the provided bundle.data dict.
If a duplicate key error occurs, responds with HTTP Error 409: CONFLICT
-
post_list
(request, **kwargs)¶
-
prepend_urls
()¶
-
put_detail
(request, **kwargs)¶ from https://github.com/toastdriven/django-tastypie/issues/42
-
temp_url
= None¶
-
verify_file
(request, **kwargs)¶ triggers verification of file, e.g. after non-POST upload complete
-
class
-
class
tardis.tardis_portal.api.
DatafileParameterResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.ParameterResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.parameters.DatafileParameter
-
queryset
¶
-
-
base_fields
= {'datetime_value': <tastypie.fields.DateTimeField object at 0x7fbcae894250>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae894150>, 'link_id': <tastypie.fields.IntegerField object at 0x7fbcae8942d0>, 'name': <tastypie.fields.ForeignKey object at 0x7fbcae894090>, 'numerical_value': <tastypie.fields.FloatField object at 0x7fbcae8941d0>, 'parameterset': <tastypie.fields.ForeignKey object at 0x7fbcae886d90>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae894110>, 'string_value': <tastypie.fields.CharField object at 0x7fbcae894190>, 'value': <tastypie.fields.CharField object at 0x7fbcae8940d0>}¶
-
declared_fields
= {'parameterset': <tastypie.fields.ForeignKey object at 0x7fbcae886d90>}¶
-
class
-
class
tardis.tardis_portal.api.
DatafileParameterSetResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.ParameterSetResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.parameters.DatafileParameterSet
-
queryset
¶
-
-
base_fields
= {'datafile': <tastypie.fields.ForeignKey object at 0x7fbcae8865d0>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae886cd0>, 'parameters': <tastypie.fields.ToManyField object at 0x7fbcae886950>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae886d50>, 'schema': <tastypie.fields.ForeignKey object at 0x7fbcae886d10>}¶
-
declared_fields
= {'datafile': <tastypie.fields.ForeignKey object at 0x7fbcae8865d0>, 'parameters': <tastypie.fields.ToManyField object at 0x7fbcae886950>}¶
-
class
-
class
tardis.tardis_portal.api.
DatasetParameterResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.ParameterResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.parameters.DatasetParameter
-
queryset
¶
-
-
base_fields
= {'datetime_value': <tastypie.fields.DateTimeField object at 0x7fbcaeb30750>, u'id': <tastypie.fields.IntegerField object at 0x7fbcaeb30650>, 'link_id': <tastypie.fields.IntegerField object at 0x7fbcaeb307d0>, 'name': <tastypie.fields.ForeignKey object at 0x7fbcaeb30590>, 'numerical_value': <tastypie.fields.FloatField object at 0x7fbcaeb306d0>, 'parameterset': <tastypie.fields.ForeignKey object at 0x7fbcaeb302d0>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb30610>, 'string_value': <tastypie.fields.CharField object at 0x7fbcaeb30690>, 'value': <tastypie.fields.CharField object at 0x7fbcaeb305d0>}¶
-
declared_fields
= {'parameterset': <tastypie.fields.ForeignKey object at 0x7fbcaeb302d0>}¶
-
class
-
class
tardis.tardis_portal.api.
DatasetParameterSetResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.ParameterSetResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.parameters.DatasetParameterSet
-
queryset
¶
-
-
base_fields
= {'dataset': <tastypie.fields.ForeignKey object at 0x7fbcae97cf90>, u'id': <tastypie.fields.IntegerField object at 0x7fbcaeb30210>, 'parameters': <tastypie.fields.ToManyField object at 0x7fbcae96d910>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb30290>, 'schema': <tastypie.fields.ForeignKey object at 0x7fbcaeb30250>}¶
-
declared_fields
= {'dataset': <tastypie.fields.ForeignKey object at 0x7fbcae97cf90>, 'parameters': <tastypie.fields.ToManyField object at 0x7fbcae96d910>}¶
-
class
-
class
tardis.tardis_portal.api.
DatasetResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
always_return_data
= True¶
-
filtering
= {'description': ('exact',), 'directory': ('exact',), 'experiments': 2, 'id': ('exact',), 'instrument': 2}¶
-
object_class
¶
-
ordering
= ['description']¶
-
queryset
¶
-
-
base_fields
= {'created_time': <tastypie.fields.DateTimeField object at 0x7fbcae886110>, 'description': <tastypie.fields.CharField object at 0x7fbcae886090>, 'directory': <tastypie.fields.CharField object at 0x7fbcae8860d0>, 'experiments': <tastypie.fields.ToManyField object at 0x7fbcae89eb50>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae886050>, 'immutable': <tastypie.fields.BooleanField object at 0x7fbcae886190>, 'instrument': <tastypie.fields.ForeignKey object at 0x7fbcae89ec10>, 'modified_time': <tastypie.fields.DateTimeField object at 0x7fbcae886150>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7fbcae89ebd0>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae89efd0>}¶
-
declared_fields
= {'experiments': <tastypie.fields.ToManyField object at 0x7fbcae89eb50>, 'instrument': <tastypie.fields.ForeignKey object at 0x7fbcae89ec10>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7fbcae89ebd0>}¶
-
get_datafiles
(request, **kwargs)¶
-
prepend_urls
()¶
-
class
-
class
tardis.tardis_portal.api.
ExperimentParameterResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.ParameterResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.parameters.ExperimentParameter
-
queryset
¶
-
-
base_fields
= {'datetime_value': <tastypie.fields.DateTimeField object at 0x7fbcaec27750>, u'id': <tastypie.fields.IntegerField object at 0x7fbcaec27890>, 'link_id': <tastypie.fields.IntegerField object at 0x7fbcaec27490>, 'name': <tastypie.fields.ForeignKey object at 0x7fbcaec27310>, 'numerical_value': <tastypie.fields.FloatField object at 0x7fbcaec27910>, 'parameterset': <tastypie.fields.ForeignKey object at 0x7fbcaec27290>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaec27610>, 'string_value': <tastypie.fields.CharField object at 0x7fbcaec27810>, 'value': <tastypie.fields.CharField object at 0x7fbcaec27a90>}¶
-
declared_fields
= {'parameterset': <tastypie.fields.ForeignKey object at 0x7fbcaec27290>}¶
-
class
-
class
tardis.tardis_portal.api.
ExperimentParameterSetResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.ParameterSetResource
API for ExperimentParameterSets
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.parameters.ExperimentParameterSet
-
queryset
¶
-
-
base_fields
= {'experiment': <tastypie.fields.ForeignKey object at 0x7fbcaeb26510>, u'id': <tastypie.fields.IntegerField object at 0x7fbcaec27210>, 'parameters': <tastypie.fields.ToManyField object at 0x7fbcaeb26e10>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaec277d0>, 'schema': <tastypie.fields.ForeignKey object at 0x7fbcaec27950>}¶
-
declared_fields
= {'experiment': <tastypie.fields.ForeignKey object at 0x7fbcaeb26510>, 'parameters': <tastypie.fields.ToManyField object at 0x7fbcaeb26e10>}¶
-
class
-
class
tardis.tardis_portal.api.
ExperimentResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
API for Experiments also creates a default ACL and allows ExperimentParameterSets to be read and written.
TODO: catch duplicate schema submissions for parameter sets
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
always_return_data
= True¶
-
filtering
= {'id': ('exact',), 'title': ('exact',)}¶
-
object_class
¶
-
ordering
= ['title', 'created_time', 'update_time']¶
-
queryset
¶
-
-
base_fields
= {'approved': <tastypie.fields.BooleanField object at 0x7fbcae999950>, 'created_by': <tastypie.fields.ForeignKey object at 0x7fbcaec27b90>, 'created_time': <tastypie.fields.DateTimeField object at 0x7fbcae876090>, 'description': <tastypie.fields.CharField object at 0x7fbcae999510>, 'end_time': <tastypie.fields.DateTimeField object at 0x7fbcae876390>, 'handle': <tastypie.fields.CharField object at 0x7fbcae876150>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae97c250>, 'institution_name': <tastypie.fields.CharField object at 0x7fbcae999fd0>, 'locked': <tastypie.fields.BooleanField object at 0x7fbcae96d490>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7fbcaec27550>, 'public_access': <tastypie.fields.IntegerField object at 0x7fbcae96d150>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae97cc10>, 'start_time': <tastypie.fields.DateTimeField object at 0x7fbcae876210>, 'title': <tastypie.fields.CharField object at 0x7fbcae999a90>, 'update_time': <tastypie.fields.DateTimeField object at 0x7fbcae876710>, 'url': <tastypie.fields.CharField object at 0x7fbcae999890>}¶
-
declared_fields
= {'created_by': <tastypie.fields.ForeignKey object at 0x7fbcaec27b90>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7fbcaec27550>}¶
-
dehydrate
(bundle)¶
-
hydrate_m2m
(bundle)¶ create ACL before any related objects are created in order to use ACL permissions for those objects.
-
obj_create
(bundle, **kwargs)¶ experiments need at least one ACL to be available through the ExperimentManager (Experiment.safe) Currently not tested for failed db transactions as sqlite does not enforce limits.
-
class
-
class
tardis.tardis_portal.api.
FacilityResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
always_return_data
= True¶
-
filtering
= {'id': ('exact',), 'manager_group': 2, 'name': ('exact',)}¶
-
object_class
¶
-
queryset
¶
-
-
base_fields
= {u'id': <tastypie.fields.IntegerField object at 0x7fbcae89e790>, 'manager_group': <tastypie.fields.ForeignKey object at 0x7fbcae89e3d0>, 'name': <tastypie.fields.CharField object at 0x7fbcae89e850>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae89e7d0>}¶
-
declared_fields
= {'manager_group': <tastypie.fields.ForeignKey object at 0x7fbcae89e3d0>}¶
-
class
-
class
tardis.tardis_portal.api.
GroupResource
(api_name=None)¶ Bases:
tastypie.resources.ModelResource
-
class
Meta
¶ -
authentication
= <tardis.tardis_portal.api.MyTardisAuthentication object>¶
Authorisation class for Tastypie.
-
filtering
= {'id': ('exact',), 'name': ('exact',)}¶
-
object_class
¶ alias of
django.contrib.auth.models.Group
-
queryset
¶
-
-
base_fields
= {u'id': <tastypie.fields.IntegerField object at 0x7fbcaeb9dd10>, 'name': <tastypie.fields.CharField object at 0x7fbcaeb9d550>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb9d650>}¶
-
declared_fields
= {}¶
-
class
-
class
tardis.tardis_portal.api.
InstrumentResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
always_return_data
= True¶
-
filtering
= {'facility': 2, 'id': ('exact',), 'name': ('exact',)}¶
-
object_class
¶
-
queryset
¶
-
-
base_fields
= {'facility': <tastypie.fields.ForeignKey object at 0x7fbcae89e810>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae89ead0>, 'name': <tastypie.fields.CharField object at 0x7fbcae89eb90>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae89eb10>}¶
-
declared_fields
= {'facility': <tastypie.fields.ForeignKey object at 0x7fbcae89e810>}¶
-
class
-
class
tardis.tardis_portal.api.
LocationResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
base_fields
= {'description': <tastypie.fields.CharField object at 0x7fbcae894650>, 'django_storage_class': <tastypie.fields.CharField object at 0x7fbcae894550>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae894510>, 'max_size': <tastypie.fields.IntegerField object at 0x7fbcae894590>, 'name': <tastypie.fields.CharField object at 0x7fbcae894610>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae8944d0>, 'status': <tastypie.fields.CharField object at 0x7fbcae8945d0>}¶
-
declared_fields
= {}¶
-
-
class
tardis.tardis_portal.api.
MyTardisAuthentication
¶ Bases:
object
custom tastypie authentication that works with both anonymous use and a number of available auth mechanisms.
-
get_identifier
(request)¶
-
is_authenticated
(request, **kwargs)¶ handles backends explicitly so that it can return False when credentials are given but wrong and return Anonymous User when credentials are not given or the session has expired (web use).
-
-
class
tardis.tardis_portal.api.
MyTardisModelResource
(api_name=None)¶ Bases:
tastypie.resources.ModelResource
-
class
Meta
¶ -
authentication
= <tardis.tardis_portal.api.MyTardisAuthentication object>¶
Authorisation class for Tastypie.
-
object_class
= None¶
-
serializer
= <tardis.tardis_portal.api.PrettyJSONSerializer object>¶
-
-
base_fields
= {u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb9d990>}¶
-
declared_fields
= {}¶
-
lookup_kwargs_with_identifiers
(bundle, kwargs)¶
-
class
-
class
tardis.tardis_portal.api.
ObjectACLResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ -
authentication
= <tardis.tardis_portal.api.MyTardisAuthentication object>¶
Authorisation class for Tastypie.
-
filtering
= {'entityId': ('exact',), 'pluginId': ('exact',)}¶
-
object_class
¶ alias of
tardis.tardis_portal.models.access_control.ObjectACL
-
queryset
¶
-
-
base_fields
= {'aclOwnershipType': <tastypie.fields.IntegerField object at 0x7fbcae87e0d0>, 'canDelete': <tastypie.fields.BooleanField object at 0x7fbcae894f90>, 'canRead': <tastypie.fields.BooleanField object at 0x7fbcae894f10>, 'canWrite': <tastypie.fields.BooleanField object at 0x7fbcae894f50>, 'content_object': <tastypie.contrib.contenttypes.fields.GenericForeignKeyField object at 0x7fbcae894910>, 'effectiveDate': <tastypie.fields.DateField object at 0x7fbcae87e050>, 'entityId': <tastypie.fields.CharField object at 0x7fbcae894e90>, 'expiryDate': <tastypie.fields.DateField object at 0x7fbcae87e090>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae894e10>, 'isOwner': <tastypie.fields.BooleanField object at 0x7fbcae894fd0>, 'object_id': <tastypie.fields.IntegerField object at 0x7fbcae894ed0>, 'pluginId': <tastypie.fields.CharField object at 0x7fbcae894e50>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae894dd0>}¶
-
declared_fields
= {'content_object': <tastypie.contrib.contenttypes.fields.GenericForeignKeyField object at 0x7fbcae894910>}¶
-
hydrate
(bundle)¶
-
class
-
class
tardis.tardis_portal.api.
ParameterNameResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
filtering
= {'schema': 2}¶
-
object_class
¶ alias of
tardis.tardis_portal.models.parameters.ParameterName
-
queryset
¶
-
-
base_fields
= {'choices': <tastypie.fields.CharField object at 0x7fbcaeb26b10>, 'comparison_type': <tastypie.fields.IntegerField object at 0x7fbcaeb9d9d0>, 'data_type': <tastypie.fields.IntegerField object at 0x7fbcaeb9d290>, 'full_name': <tastypie.fields.CharField object at 0x7fbcaeb9d250>, u'id': <tastypie.fields.IntegerField object at 0x7fbcaeb9d910>, 'immutable': <tastypie.fields.BooleanField object at 0x7fbcaeb9d390>, 'is_searchable': <tastypie.fields.BooleanField object at 0x7fbcaeb9de50>, 'name': <tastypie.fields.CharField object at 0x7fbcaeb9d0d0>, 'order': <tastypie.fields.IntegerField object at 0x7fbcaeb26c90>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb9d710>, 'schema': <tastypie.fields.ForeignKey object at 0x7fbcaeb9dc50>, 'units': <tastypie.fields.CharField object at 0x7fbcaeb9d4d0>}¶
-
declared_fields
= {'schema': <tastypie.fields.ForeignKey object at 0x7fbcaeb9dc50>}¶
-
class
-
class
tardis.tardis_portal.api.
ParameterResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
base_fields
= {'name': <tastypie.fields.ForeignKey object at 0x7fbcaeb9d690>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb26d10>, 'value': <tastypie.fields.CharField object at 0x7fbcaeb26cd0>}¶
-
declared_fields
= {'name': <tastypie.fields.ForeignKey object at 0x7fbcaeb9d690>, 'value': <tastypie.fields.CharField object at 0x7fbcaeb26cd0>}¶
-
hydrate
(bundle)¶ sets the parametername by uri or name if untyped value is given, set value via parameter method, otherwise use modelresource automatisms
-
-
class
tardis.tardis_portal.api.
ParameterSetResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
base_fields
= {u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb26ad0>, 'schema': <tastypie.fields.ForeignKey object at 0x7fbcaeb26a90>}¶
-
declared_fields
= {'schema': <tastypie.fields.ForeignKey object at 0x7fbcaeb26a90>}¶
-
hydrate_schema
(bundle)¶
-
-
class
tardis.tardis_portal.api.
PrettyJSONSerializer
(formats=None, content_types=None, datetime_formatting=None)¶ Bases:
tastypie.serializers.Serializer
-
json_indent
= 2¶
-
to_json
(data, options=None)¶
-
-
class
tardis.tardis_portal.api.
ReplicaResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
filtering
= {'url': ('exact', 'startswith'), 'verified': ('exact',)}¶
-
object_class
¶ alias of
tardis.tardis_portal.models.datafile.DataFileObject
-
queryset
¶
-
-
base_fields
= {'created_time': <tastypie.fields.DateTimeField object at 0x7fbcae894a10>, 'datafile': <tastypie.fields.ForeignKey object at 0x7fbcae894490>, u'id': <tastypie.fields.IntegerField object at 0x7fbcae894990>, 'last_verified_time': <tastypie.fields.DateTimeField object at 0x7fbcae894a90>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae894950>, 'uri': <tastypie.fields.CharField object at 0x7fbcae8949d0>, 'verified': <tastypie.fields.BooleanField object at 0x7fbcae894a50>}¶
-
declared_fields
= {'datafile': <tastypie.fields.ForeignKey object at 0x7fbcae894490>}¶
-
dehydrate
(bundle)¶
-
hydrate
(bundle)¶
-
class
-
class
tardis.tardis_portal.api.
SchemaResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
filtering
= {'id': ('exact',), 'namespace': ('exact',)}¶
-
object_class
¶
-
queryset
¶
-
-
base_fields
= {'hidden': <tastypie.fields.BooleanField object at 0x7fbcaeb9d150>, u'id': <tastypie.fields.IntegerField object at 0x7fbcaeb9d310>, 'immutable': <tastypie.fields.BooleanField object at 0x7fbcaeb9d750>, 'name': <tastypie.fields.CharField object at 0x7fbcaeb9d810>, 'namespace': <tastypie.fields.CharField object at 0x7fbcaeb9da90>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb9d450>, 'subtype': <tastypie.fields.CharField object at 0x7fbcaeb9dcd0>, 'type': <tastypie.fields.IntegerField object at 0x7fbcaeb9d350>}¶
-
declared_fields
= {}¶
-
lookup_kwargs_with_identifiers
(bundle, kwargs)¶
-
class
-
class
tardis.tardis_portal.api.
StorageBoxAttributeResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.storage.StorageBoxAttribute
-
queryset
¶
-
-
base_fields
= {u'id': <tastypie.fields.IntegerField object at 0x7fbcae89e450>, 'key': <tastypie.fields.CharField object at 0x7fbcae89e490>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcae89e410>, 'storage_box': <tastypie.fields.ForeignKey object at 0x7fbcaeb30f90>, 'value': <tastypie.fields.CharField object at 0x7fbcae89e4d0>}¶
-
declared_fields
= {'storage_box': <tastypie.fields.ForeignKey object at 0x7fbcaeb30f90>}¶
-
class
-
class
tardis.tardis_portal.api.
StorageBoxOptionResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
class
Meta
¶ Bases:
tardis.tardis_portal.api.Meta
-
object_class
¶ alias of
tardis.tardis_portal.models.storage.StorageBoxOption
-
queryset
¶
-
-
accessible_keys
= ['location']¶
-
base_fields
= {u'id': <tastypie.fields.IntegerField object at 0x7fbcae89e050>, 'key': <tastypie.fields.CharField object at 0x7fbcae89e090>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb30fd0>, 'storage_box': <tastypie.fields.ForeignKey object at 0x7fbcaeb30b10>, 'value': <tastypie.fields.CharField object at 0x7fbcae89e0d0>, 'value_type': <tastypie.fields.CharField object at 0x7fbcae89e110>}¶
-
declared_fields
= {'storage_box': <tastypie.fields.ForeignKey object at 0x7fbcaeb30b10>}¶
-
class
-
class
tardis.tardis_portal.api.
StorageBoxResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
base_fields
= {'attributes': <tastypie.fields.ToManyField object at 0x7fbcaeb30810>, 'description': <tastypie.fields.CharField object at 0x7fbcaeb30cd0>, 'django_storage_class': <tastypie.fields.CharField object at 0x7fbcaeb30bd0>, u'id': <tastypie.fields.IntegerField object at 0x7fbcaeb30b90>, 'max_size': <tastypie.fields.IntegerField object at 0x7fbcaeb30c10>, 'name': <tastypie.fields.CharField object at 0x7fbcaeb30c90>, 'options': <tastypie.fields.ToManyField object at 0x7fbcaeb30550>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb30b50>, 'status': <tastypie.fields.CharField object at 0x7fbcaeb30c50>}¶
-
declared_fields
= {'attributes': <tastypie.fields.ToManyField object at 0x7fbcaeb30810>, 'options': <tastypie.fields.ToManyField object at 0x7fbcaeb30550>}¶
-
-
class
tardis.tardis_portal.api.
UserResource
(api_name=None)¶ Bases:
tastypie.resources.ModelResource
-
class
Meta
¶ -
allowed_methods
= ['get']¶
-
authentication
= <tardis.tardis_portal.api.MyTardisAuthentication object>¶
Authorisation class for Tastypie.
-
fields
= ['username', 'first_name', 'last_name', 'email']¶
-
filtering
= {'email': ('iexact',), 'username': ('exact',)}¶
-
object_class
¶ alias of
django.contrib.auth.models.User
-
queryset
¶
-
serializer
= <tardis.tardis_portal.api.PrettyJSONSerializer object>¶
-
-
base_fields
= {'email': <tastypie.fields.CharField object at 0x7fbcaeb9df50>, 'first_name': <tastypie.fields.CharField object at 0x7fbcaeb9da10>, 'groups': <tastypie.fields.ManyToManyField object at 0x7fbcaec68590>, 'last_name': <tastypie.fields.CharField object at 0x7fbcaeb9d190>, u'resource_uri': <tastypie.fields.CharField object at 0x7fbcaeb9d5d0>, 'username': <tastypie.fields.CharField object at 0x7fbcaeb9d850>}¶
-
declared_fields
= {'groups': <tastypie.fields.ManyToManyField object at 0x7fbcaec68590>}¶
-
dehydrate
(bundle)¶ use cases:
public user: anonymous: name, uri, email, id authenticated: other user: name, uri, email, id [, username if facility manager] same user: name, uri, email, id, username private user: anonymous: none authenticated: other user: name, uri, id [, username, email if facility manager] same user: name, uri, email, id, username
-
class
-
tardis.tardis_portal.api.
lookup_by_unique_id_only
(resource)¶ returns custom lookup function. initialise with resource type
tardis.tardis_portal.context_processors module¶
-
tardis.tardis_portal.context_processors.
global_contexts
(request)¶
-
tardis.tardis_portal.context_processors.
google_analytics
(request)¶ adds context for portal_template.html
-
tardis.tardis_portal.context_processors.
registration_processor
(request)¶
-
tardis.tardis_portal.context_processors.
single_search_processor
(request)¶
-
tardis.tardis_portal.context_processors.
user_details_processor
(request)¶
tardis.tardis_portal.creativecommonshandler module¶
Creative Commons Handler
A wrapper for creative commons interactions on a ParameterSet
-
class
tardis.tardis_portal.creativecommonshandler.
CreativeCommonsHandler
(experiment_id=None, create=True)¶ -
experiment_id
= None¶
-
get_or_create_cc_parameterset
(create=True)¶ Gets the creative commons parameterset for the experiment :param create: If true, creates a new parameterset object to hold the cc license if one doesn’t exist :type create: boolean :return: The parameterset manager for the cc parameterset :rtype:
tardis.tardis_portal.ParameterSetManager. ParameterSetManager
-
has_cc_license
()¶ Returns: True if there’s a cc license parameterset for the experiment Return type: boolean
-
psm
= None¶
-
save_license
(request)¶ Saves a license parameterset with the POST variables from the creative commons form :param request: a HTTP Request instance :type request:
django.http.HttpRequest
-
schema
= 'http://www.tardis.edu.au/schemas/creative_commons/2011/05/17'¶
-
tardis.tardis_portal.deprecations module¶
Deprecation warnings
-
exception
tardis.tardis_portal.deprecations.
RemovedInMyTardis41Warning
¶ Bases:
exceptions.DeprecationWarning
Used to raise warnings about deprecated functionality.
Usage:
import warnings warnings.warn( "This method will be removed in MyTardis 4.1. " "Please use method2 instead.", RemovedInMyTardis41Warning )
-
exception
tardis.tardis_portal.deprecations.
RemovedInMyTardis42Warning
¶ Bases:
exceptions.PendingDeprecationWarning
Used to raise warnings about deprecated functionality.
Usage:
import warnings warnings.warn( "This method will be removed in MyTardis 4.2. " "Please use method2 instead.", RemovedInMyTardis42Warning )
tardis.tardis_portal.download module¶
download.py
-
class
tardis.tardis_portal.download.
UncachedTarStream
(mapped_file_objs, filename, do_gzip=False, buffersize=131072, comp_level=6, http_buffersize=65535)¶ Bases:
tarfile.TarFile
Stream files into a compressed tar stream on the fly
-
close_gzip
()¶
-
compress
(buf)¶
-
compute_size
()¶
-
get_response
(tracker_data=None)¶
-
make_tar
()¶ main tar generator. until python 3 needs to be in one function because ‘yield’s don’t bubble up.
-
prepare_output
(uc_buf, remainder)¶
-
tarinfo_for_df
(df, name)¶
-
-
tardis.tardis_portal.download.
classic_mapper
(rootdir)¶
-
tardis.tardis_portal.download.
download_api_key
(request, *args, **kwargs)¶
-
tardis.tardis_portal.download.
download_datafile
(request, datafile_id)¶
-
tardis.tardis_portal.download.
get_download_organizations
()¶
-
tardis.tardis_portal.download.
make_mapper
(organization, rootdir)¶
-
tardis.tardis_portal.download.
streaming_download_datafiles
(request)¶ takes string parameter “comptype” for compression method. Currently implemented: “tgz” and “tar” The datafiles to be downloaded are selected using “datafile”, “dataset” or “url” parameters. An “expid” parameter may be supplied for use in the download archive name. If “url” is used, the “expid” parameter is also used to limit the datafiles to be downloaded to a given experiment.
-
tardis.tardis_portal.download.
view_datafile
(request, datafile_id)¶
tardis.tardis_portal.email module¶
-
tardis.tardis_portal.email.
build_template_html
(template_filename, context)¶
-
tardis.tardis_portal.email.
build_template_text
(template_filename, context)¶
-
tardis.tardis_portal.email.
email_user
(subject, template_filename, context, user)¶
tardis.tardis_portal.errors module¶
Created on 02/09/2010
-
exception
tardis.tardis_portal.errors.
ParameterChoicesFormatError
(msg)¶ Bases:
exceptions.Exception
-
exception
tardis.tardis_portal.errors.
SearchQueryTypeUnprovidedError
(msg)¶ Bases:
exceptions.Exception
-
exception
tardis.tardis_portal.errors.
UnsupportedSearchQueryTypeError
(msg)¶ Bases:
exceptions.Exception
tardis.tardis_portal.fields module¶
tardis.tardis_portal.forms module¶
forms module
-
class
tardis.tardis_portal.forms.
AddGroupPermissionsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7fbcaf502490>, 'authMethod': <django.forms.fields.CharField object at 0x7fbcaf502590>}¶
-
declared_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7fbcaf502490>, 'authMethod': <django.forms.fields.CharField object at 0x7fbcaf502590>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
AddUserPermissionsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7fbcaf5021d0>, 'autocomp_user': <django.forms.fields.CharField object at 0x7fbcaf502090>, 'delete': <django.forms.fields.BooleanField object at 0x7fbcaf5023d0>, 'entered_user': <django.forms.fields.CharField object at 0x7fbcaf4fdfd0>, 'read': <django.forms.fields.BooleanField object at 0x7fbcaf502150>, 'write': <django.forms.fields.BooleanField object at 0x7fbcaf502350>}¶
-
declared_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7fbcaf5021d0>, 'autocomp_user': <django.forms.fields.CharField object at 0x7fbcaf502090>, 'delete': <django.forms.fields.BooleanField object at 0x7fbcaf5023d0>, 'entered_user': <django.forms.fields.CharField object at 0x7fbcaf4fdfd0>, 'read': <django.forms.fields.BooleanField object at 0x7fbcaf502150>, 'write': <django.forms.fields.BooleanField object at 0x7fbcaf502350>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
ChangeGroupPermissionsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'canDelete': <django.forms.fields.BooleanField object at 0x7fbcaf4fde50>, 'canRead': <django.forms.fields.BooleanField object at 0x7fbcaf4fd8d0>, 'canWrite': <django.forms.fields.BooleanField object at 0x7fbcaf4fddd0>, 'effectiveDate': <django.forms.fields.DateTimeField object at 0x7fbcaf4fde90>, 'expiryDate': <django.forms.fields.DateTimeField object at 0x7fbcaf4fdf90>}¶
-
declared_fields
= {'canDelete': <django.forms.fields.BooleanField object at 0x7fbcaf4fde50>, 'canRead': <django.forms.fields.BooleanField object at 0x7fbcaf4fd8d0>, 'canWrite': <django.forms.fields.BooleanField object at 0x7fbcaf4fddd0>, 'effectiveDate': <django.forms.fields.DateTimeField object at 0x7fbcaf4fde90>, 'expiryDate': <django.forms.fields.DateTimeField object at 0x7fbcaf4fdf90>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
ChangeUserPermissionsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
class
ObjectACL
(*args, **kwargs)¶ Bases:
django.db.models.base.Model
The ObjectACL (formerly ExperimentACL) table is the core of the Tardis Authorisation framework
Attribute pluginId: the the name of the auth plugin being used Attribute entityId: a foreign key to auth plugins Attribute object_type: a foreign key to ContentType Attribute object_id: the primary key/id of the object_type Attribute canRead: gives the user read access Attribute canWrite: gives the user write access Attribute canDelete: gives the user delete permission Attribute isOwner: the experiment owner flag. Attribute effectiveDate: the date when access takes into effect Attribute expiryDate: the date when access ceases Attribute aclOwnershipType: system-owned or user-owned. System-owned ACLs will prevent users from removing or editing ACL entries to a particular experiment they own. User-owned ACLs will allow experiment owners to remove/add/edit ACL entries to the experiments they own.
-
exception
DoesNotExist
¶
-
exception
MultipleObjectsReturned
¶
-
OWNER_OWNED
= 1¶
-
SYSTEM_OWNED
= 2¶
-
aclOwnershipType
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
canDelete
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
canRead
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
canWrite
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
content_object
¶ Provide a generic many-to-one relation through the
content_type
andobject_id
fields.This class also doubles as an accessor to the related object (similar to ForwardManyToOneDescriptor) by adding itself as a model attribute.
-
content_type
¶ Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
child.parent
is aForwardManyToOneDescriptor
instance.
-
content_type_id
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
effectiveDate
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
entityId
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
expiryDate
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
get_aclOwnershipType_display
(**morekwargs)¶
-
classmethod
get_effective_query
()¶
If possible, resolve the pluginId/entityId combination to a user or group object.
If possible, resolve the pluginId/entityId combination to a user or group object.
-
id
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
isOwner
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
object_id
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
objects
= <django.db.models.manager.Manager object>¶
-
openidaclmigration_set
¶ Accessor to the related objects manager on the reverse side of a many-to-one relation.
In the example:
class Child(Model): parent = ForeignKey(Parent, related_name='children')
parent.children
is aReverseManyToOneDescriptor
instance.Most of the implementation is delegated to a dynamically defined manager class built by
create_forward_many_to_many_manager()
defined below.
-
pluginId
¶ A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.
-
exception
-
fields
= ['canDelete', 'canRead', 'canWrite', 'effectiveDate', 'expiryDate', 'isOwner']¶
-
model
¶ alias of
tardis.tardis_portal.models.access_control.ObjectACL
-
widgets
= {'effectiveDate': <django.forms.widgets.SelectDateWidget object at 0x7fbcaf4fd7d0>, 'expiryDate': <django.forms.widgets.SelectDateWidget object at 0x7fbcaf4fd790>}¶
-
class
-
base_fields
= {'canDelete': <django.forms.fields.BooleanField object at 0x7fbcaf4fda50>, 'canRead': <django.forms.fields.BooleanField object at 0x7fbcaf4fd910>, 'canWrite': <django.forms.fields.BooleanField object at 0x7fbcaf4fd9d0>, 'effectiveDate': <django.forms.fields.DateField object at 0x7fbcaf4fdbd0>, 'expiryDate': <django.forms.fields.DateField object at 0x7fbcaf4fdd10>, 'isOwner': <django.forms.fields.BooleanField object at 0x7fbcaf4fdb10>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.forms.
CreateGroupPermissionsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7fbcaf502650>, 'adduser': <django.forms.fields.CharField object at 0x7fbcaf502710>, 'authMethod': <django.forms.fields.CharField object at 0x7fbcaf502790>}¶
-
declared_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7fbcaf502650>, 'adduser': <django.forms.fields.CharField object at 0x7fbcaf502710>, 'authMethod': <django.forms.fields.CharField object at 0x7fbcaf502790>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
CreateUserPermissionsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
tardis.tardis_portal.forms.RegistrationForm
-
base_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7fbcaf502c50>, 'email': <django.forms.fields.EmailField object at 0x7fbcaf4fd3d0>, 'password1': <django.forms.fields.CharField object at 0x7fbcaf4fd510>, 'password2': <django.forms.fields.CharField object at 0x7fbcaf4fd5d0>, 'username': <django.forms.fields.RegexField object at 0x7fbcaf4fd1d0>}¶
-
declared_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7fbcaf502c50>, 'email': <django.forms.fields.EmailField object at 0x7fbcaf4fd3d0>, 'password1': <django.forms.fields.CharField object at 0x7fbcaf4fd510>, 'password2': <django.forms.fields.CharField object at 0x7fbcaf4fd5d0>, 'username': <django.forms.fields.RegexField object at 0x7fbcaf4fd1d0>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
DatasetForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
base_fields
= {'description': <django.forms.fields.CharField object at 0x7fbcaf512750>, 'directory': <django.forms.fields.CharField object at 0x7fbcaf5129d0>, 'instrument': <django.forms.models.ModelChoiceField object at 0x7fbcaf512a90>}¶
-
declared_fields
= {'description': <django.forms.fields.CharField object at 0x7fbcaf512750>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
ExperimentAuthor
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= ['author', 'institution', 'email', 'order', 'url']¶
-
model
¶ alias of
tardis.tardis_portal.models.experiment.ExperimentAuthor
-
-
base_fields
= {'author': <django.forms.fields.CharField object at 0x7fbcaf512950>, 'email': <django.forms.fields.CharField object at 0x7fbcaf512dd0>, 'institution': <django.forms.fields.CharField object at 0x7fbcaf512d10>, 'order': <django.forms.fields.IntegerField object at 0x7fbcaf512f50>, 'url': <django.forms.fields.URLField object at 0x7fbcaf439050>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.forms.
ExperimentForm
(data=None, files=None, auto_id='%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=':', empty_permitted=False, instance=None, extra=0)¶ Bases:
django.forms.models.ModelForm
This handles the complex experiment forms.
All internal datasets forms are prefixed with dataset_, and all internal dataset file fields are prefixed with file_. These are parsed out of the post data and added to the form as internal lists.
-
class
FullExperiment
(**kwargs)¶ Bases:
UserDict.UserDict
This is a dict wrapper that store the values returned from the
tardis.tardis_portal.forms.ExperimentForm.save()
function. It provides a convience method for saving the model objects.-
save_m2m
()¶ {‘experiment’: experiment, ‘experiment_authors’: experiment_authors, ‘authors’: authors, ‘datasets’: datasets, ‘datafiles’: datafiles}
-
-
base_fields
= {'description': <django.forms.fields.CharField object at 0x7fbcaf439490>, 'institution_name': <django.forms.fields.CharField object at 0x7fbcaf439390>, 'title': <django.forms.fields.CharField object at 0x7fbcaf439310>, 'url': <django.forms.fields.CharField object at 0x7fbcaf587a90>}¶
-
declared_fields
= {'url': <django.forms.fields.CharField object at 0x7fbcaf587a90>}¶
-
is_valid
()¶ Test the validity of the form, the form may be invalid even if the error attribute has no contents. This is because the returnd value is dependent on the validity of the nested forms.
This validity also takes into account forign keys that might be dependent on an unsaved model.
Returns: validity Return type: bool
-
media
¶
-
save
(commit=True)¶
-
class
-
class
tardis.tardis_portal.forms.
ImportParamsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'params': <django.forms.fields.FileField object at 0x7fbcaf502e50>, 'password': <django.forms.fields.CharField object at 0x7fbcaf502d90>, 'username': <django.forms.fields.CharField object at 0x7fbcaf502cd0>}¶
-
declared_fields
= {'params': <django.forms.fields.FileField object at 0x7fbcaf502e50>, 'password': <django.forms.fields.CharField object at 0x7fbcaf502d90>, 'username': <django.forms.fields.CharField object at 0x7fbcaf502cd0>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
LoginForm
(*args, **kwargs)¶ Bases:
django.contrib.auth.forms.AuthenticationForm
-
base_fields
= {'password': <django.forms.fields.CharField object at 0x7fbcb2218850>, 'username': <django.contrib.auth.forms.UsernameField object at 0x7fbcb2218790>}¶
-
declared_fields
= {'password': <django.forms.fields.CharField object at 0x7fbcb2218850>, 'username': <django.contrib.auth.forms.UsernameField object at 0x7fbcb2218790>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
ManageAccountForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
Form for changing account details.
-
class
Meta
¶ -
fields
= ('first_name', 'last_name', 'email')¶
-
model
¶ alias of
django.contrib.auth.models.User
-
-
base_fields
= {'email': <django.forms.fields.EmailField object at 0x7fbcaf439f50>, 'first_name': <django.forms.fields.CharField object at 0x7fbcaf439c90>, 'last_name': <django.forms.fields.CharField object at 0x7fbcaf439d90>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.forms.
ManageGroupPermissionsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'adduser': <django.forms.fields.CharField object at 0x7fbcaf502990>, 'admin': <django.forms.fields.BooleanField object at 0x7fbcaf502a50>, 'authMethod': <django.forms.fields.CharField object at 0x7fbcaf5029d0>}¶
-
declared_fields
= {'adduser': <django.forms.fields.CharField object at 0x7fbcaf502990>, 'admin': <django.forms.fields.BooleanField object at 0x7fbcaf502a50>, 'authMethod': <django.forms.fields.CharField object at 0x7fbcaf5029d0>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
NoInput
(attrs=None)¶ Bases:
django.forms.widgets.Widget
-
media
¶
-
render
(name, value, attrs=None)¶
-
-
class
tardis.tardis_portal.forms.
RawSearchForm
(*args, **kwargs)¶ Bases:
haystack.forms.SearchForm
-
base_fields
= {'q': <django.forms.fields.CharField object at 0x7fbcaf4e7050>}¶
-
declared_fields
= {'q': <django.forms.fields.CharField object at 0x7fbcaf4e7050>}¶
-
media
¶
-
search
()¶
-
-
class
tardis.tardis_portal.forms.
RegisterExperimentForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'experiment_owner': <django.forms.fields.CharField object at 0x7fbcaf512310>, 'from_url': <django.forms.fields.CharField object at 0x7fbcaf5124d0>, 'originid': <django.forms.fields.CharField object at 0x7fbcaf5123d0>, 'password': <django.forms.fields.CharField object at 0x7fbcaf5120d0>, 'username': <django.forms.fields.CharField object at 0x7fbcaf512050>, 'xml_filename': <django.forms.fields.CharField object at 0x7fbcaf512290>, 'xmldata': <django.forms.fields.FileField object at 0x7fbcaf512190>}¶
-
declared_fields
= {'experiment_owner': <django.forms.fields.CharField object at 0x7fbcaf512310>, 'from_url': <django.forms.fields.CharField object at 0x7fbcaf5124d0>, 'originid': <django.forms.fields.CharField object at 0x7fbcaf5123d0>, 'password': <django.forms.fields.CharField object at 0x7fbcaf5120d0>, 'username': <django.forms.fields.CharField object at 0x7fbcaf512050>, 'xml_filename': <django.forms.fields.CharField object at 0x7fbcaf512290>, 'xmldata': <django.forms.fields.FileField object at 0x7fbcaf512190>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
RegistrationForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)¶ Bases:
django.forms.forms.Form
Form for registering a new user account.
Validates that the requested username is not already in use, and requires the password to be entered twice to catch typos.
Subclasses should feel free to add any additional validation they need, but should avoid defining a
save()
method – the actual saving of collected user data is delegated to the active registration backend.-
base_fields
= {'email': <django.forms.fields.EmailField object at 0x7fbcaf4fd3d0>, 'password1': <django.forms.fields.CharField object at 0x7fbcaf4fd510>, 'password2': <django.forms.fields.CharField object at 0x7fbcaf4fd5d0>, 'username': <django.forms.fields.RegexField object at 0x7fbcaf4fd1d0>}¶
-
clean
()¶ Verifiy that the values entered into the two password fields match. Note that an error here will end up in
non_field_errors()
because it doesn’t apply to a single field.
-
clean_username
()¶ Validate that the username is alphanumeric and is not already in use.
-
declared_fields
= {'email': <django.forms.fields.EmailField object at 0x7fbcaf4fd3d0>, 'password1': <django.forms.fields.CharField object at 0x7fbcaf4fd510>, 'password2': <django.forms.fields.CharField object at 0x7fbcaf4fd5d0>, 'username': <django.forms.fields.RegexField object at 0x7fbcaf4fd1d0>}¶
-
media
¶
-
save
(**kwargs)¶
-
-
class
tardis.tardis_portal.forms.
RightsForm
(data=None, files=None, auto_id=u'id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None)¶ Bases:
django.forms.models.ModelForm
Form for changing public access and licence.
-
class
Meta
¶ -
fields
= ('public_access', 'license')¶
-
model
¶
-
widgets
= {'license': <django.forms.widgets.HiddenInput object at 0x7fbcaf439790>}¶
-
-
base_fields
= {'license': <django.forms.models.ModelChoiceField object at 0x7fbcaf439a10>, 'public_access': <django.forms.fields.TypedChoiceField object at 0x7fbcaf439890>}¶
-
clean
()¶
-
declared_fields
= {}¶
-
media
¶
-
class
-
class
tardis.tardis_portal.forms.
StaticField
(required=True, widget=None, label=None, initial=None, help_text=u'', error_messages=None, show_hidden_initial=False, validators=(), localize=False, disabled=False, label_suffix=None)¶ Bases:
django.forms.fields.Field
-
clean
(value)¶
-
-
tardis.tardis_portal.forms.
createLinkedUserAuthenticationForm
(authMethods)¶ Create a LinkedUserAuthenticationForm and use the contents of authMethods to the list of options in the dropdown menu for authenticationMethod.
-
tardis.tardis_portal.forms.
createSearchExperimentForm
()¶
-
tardis.tardis_portal.forms.
create_datafile_add_form
(schema, parentObject, request=None)¶
-
tardis.tardis_portal.forms.
create_parameterset_edit_form
(parameterset, request=None)¶
-
tardis.tardis_portal.forms.
getAuthMethodChoices
()¶
-
tardis.tardis_portal.forms.
save_datafile_add_form
(schema, parentObject, request)¶
-
tardis.tardis_portal.forms.
save_datafile_edit_form
(parameterset, request)¶
tardis.tardis_portal.hacks module¶
hacks.py For hacks which should be removed at a later stage
-
tardis.tardis_portal.hacks.
oracle_dbops_hack
(f)¶ affects only oracle - safe for other database engines
tardis.tardis_portal.iiif module¶
-
tardis.tardis_portal.iiif.
compliance_header
(f)¶
-
tardis.tardis_portal.iiif.
compute_etag
(request, datafile_id, *args, **kwargs)¶
-
tardis.tardis_portal.iiif.
download_image
(request, *args, **kwargs)¶
-
tardis.tardis_portal.iiif.
download_info
(request, *args, **kwargs)¶
tardis.tardis_portal.logging_middleware module¶
-
class
tardis.tardis_portal.logging_middleware.
LoggingMiddleware
(get_response)¶ Bases:
object
-
process_exception
(request, exception)¶
-
process_response
(request, response)¶
-
-
tardis.tardis_portal.logging_middleware.
get_client_ip
(request)¶
tardis.tardis_portal.managers module¶
managers.py
-
class
tardis.tardis_portal.managers.
ExperimentManager
¶ Bases:
tardis.tardis_portal.managers.OracleSafeManager
Implements a custom manager for the Experiment model which checks the authorisation rules for the requesting user first
To make this work, the request must be passed to all class functions. The username and the group memberships are then resolved via the user.userprofile.ext_groups and user objects.
The
tardis.tardis_portal.auth.AuthService
is responsible for filling the request.groups object.-
all
(user)¶ Returns all experiments a user - either authenticated or anonymous - is allowed to see and search
Parameters: user (User) – a User instance Returns: QuerySet of Experiments Return type: QuerySet
-
external_users
(experiment_id)¶ returns a list of groups which have external ACL rules
Parameters: experiment_id (int) – the ID of the experiment to be edited Returns: list of groups with external ACLs Return type: list
-
get
(user, experiment_id)¶ Returns an experiment under the consideration of the ACL rules Raises PermissionDenied if the user does not have access.
Parameters: - user (User) – a User instance
- experiment_id (int) – the ID of the experiment to be edited
Returns: Experiment
Return type: Raises: PermissionDenied –
-
group_acls_system_owned
(experiment_id)¶ Returns a list of ACL rules associated with this experiment.
Parameters: experiment_id (int) – the ID of the experiment Returns: QuerySet of system-owned ACLs for experiment Return type: QuerySet
-
group_acls_user_owned
(experiment_id)¶ Returns a list of ACL rules associated with this experiment.
Parameters: experiment_id (int) – the ID of the experiment Returns: QuerySet of ACLs Return type: QuerySet
-
owned
(user)¶ Return all experiments which are owned by a particular user, including those shared with a group of which the user is a member.
Parameters: user (User) – a User instance Returns: QuerySet of Experiments owned by user Return type: QuerySet
-
owned_by_group
(group)¶ Return all experiments that are owned by a particular group
-
owned_by_user
(user)¶ Return all experiments which are owned by a particular user id
Parameters: user (User) – a User Object Returns: QuerySet of Experiments owned by user Return type: QuerySet
-
owned_by_user_id
(userId)¶ Return all experiments which are owned by a particular user id
Parameters: userId (int) – a User ID Returns: QuerySet of Experiments owned by user id Return type: QuerySet
-
public
()¶
-
system_owned_groups
(experiment_id)¶ returns a list of sytem-owned groups which have ACL rules associated with this experiment
Parameters: experiment_id (string) – the ID of the experiment to be edited Returns: system owned groups for experiment Return type: QuerySet
-
user_acls
(experiment_id)¶ Returns a list of ACL rules associated with this experiment.
Parameters: experiment_id (string) – the ID of the experiment Returns: QuerySet of ACLs Return type: QuerySet
-
-
class
tardis.tardis_portal.managers.
OracleSafeManager
¶ Bases:
django.db.models.manager.Manager
Implements a custom manager which automatically defers the retreival of any TextField fields on calls to get_queryset. This is to avoid the known issue that ‘distinct’ calls on query_sets containing TextFields fail when Oracle is being used as the backend.
-
get_queryset
()¶ Returns a new QuerySet object. Subclasses can override this method to easily customize the behavior of the Manager.
-
tardis.tardis_portal.rfc3339 module¶
The function rfc3339 formats dates according to the RFC 3339. rfc3339 tries to have as much as possible sensible defaults.
-
tardis.tardis_portal.rfc3339.
rfc3339
(date, utc=False, use_system_timezone=True)¶ Return a string formatted according to the RFC 3339. If called with utc=True, it normalizes date to the UTC date. If date does not have any timezone information, uses the local timezone:
>>> date = datetime.datetime(2008, 4, 2, 20) >>> rfc3339(date, utc=True, use_system_timezone=False) '2008-04-02T20:00:00Z' >>> rfc3339(date) '2008-04-02T20:00:00...'
If called with user_system_time=False don’t use the local timezone and consider the offset to UTC to be zero:
>>> rfc3339(date, use_system_timezone=False) '2008-04-02T20:00:00+00:00'
date must be a a datetime.datetime, datetime.date or a timestamp as returned by time.time():
>>> rfc3339(0, utc=True, use_system_timezone=False) '1970-01-01T00:00:00Z' >>> rfc3339(datetime.date(2008, 9, 6), use_system_timezone=False) '2008-09-06T00:00:00+00:00' >>> rfc3339('foo bar') Traceback (most recent call last): ... TypeError: excepted datetime, got str instead
tardis.tardis_portal.search_backend module¶
-
class
tardis.tardis_portal.search_backend.
HighlightSearchBackend
(connection_alias, **connection_options)¶ Bases:
haystack.backends.elasticsearch_backend.ElasticsearchSearchBackend
-
search
(query_string, sort_by=None, start_offset=0, end_offset=None, fields='', highlight=False, facets=None, date_facets=None, query_facets=None, narrow_queries=None, spelling_query=None, limit_to_registered_models=None, result_class=None, **kwargs)¶
-
tardis.tardis_portal.search_query module¶
search_backend.py
tardis.tardis_portal.shortcuts module¶
-
class
tardis.tardis_portal.shortcuts.
RestfulExperimentParameterSet
(schema_func, form_cls)¶ Bases:
object
Helper class which enables a Backbone.sync-compatible interface to be created for a ExperimentParameterSet just by specifying a function which provides the schema and a form.
(A function for the schema is required rather than the actual schema, as to run unit tests effectively the object needs to be able to create the schema after instantiation.)
For UI consistency, it’s best to make sure the schema has hidden == true.
-
schema
¶ Use schema function to get the schema.
-
view_functions
¶
-
-
tardis.tardis_portal.shortcuts.
get_experiment_referer
(request, dataset_id)¶
-
tardis.tardis_portal.shortcuts.
redirect_back_with_error
(request, message)¶
-
tardis.tardis_portal.shortcuts.
render_error_message
(request, message, status=400)¶ Render a simple text error message in a generic error page. Any newlines are turned into <br>.
-
tardis.tardis_portal.shortcuts.
render_response_index
(request, *args, **kwargs)¶
-
tardis.tardis_portal.shortcuts.
render_response_search
(request, url, c)¶
-
tardis.tardis_portal.shortcuts.
render_to_file
(template, filename, context)¶
-
tardis.tardis_portal.shortcuts.
return_response_error
(request)¶
-
tardis.tardis_portal.shortcuts.
return_response_error_message
(request, redirect_path, context)¶
-
tardis.tardis_portal.shortcuts.
return_response_not_found
(request)¶
tardis.tardis_portal.signals module¶
tardis.tardis_portal.tasks module¶
-
tardis.tardis_portal.tasks.
get_response
(_)¶
-
tardis.tardis_portal.tasks.
init_filters
()¶ load filters and avoid circular import
tardis.tardis_portal.util module¶
-
tardis.tardis_portal.util.
generate_file_checksums
(sourceFile, tempFile=None, leave_open=False)¶ DEPRECATED Generate checksums, etcetera for a file read from ‘sourceFile’. If ‘tempFile’ is provided, the bytes are written to it as they are read. The result is a tuple comprising the MD5 checksum, the SHA512 checksum, the file length, and chunk containing the start of the file (for doing mimetype guessing if necessary).
-
tardis.tardis_portal.util.
get_filesystem_safe_dataset_name
(dataset)¶ Given a Dataset, return a filesystem safe string representing the dataset. Useful for filenames for dataset downloads, maybe URLs.
Parameters: dataset (tardis.tardis_portal.models.dataset.Dataset) – A Dataset object. Returns: A filesystem safe string as a Dataset name. Return type: basestring
-
tardis.tardis_portal.util.
get_filesystem_safe_experiment_name
(experiment)¶ Given an Experiment, return a filesystem safe string representing the experiment. Useful for filenames for experiment downloads, maybe URLs.
Parameters: experiment (tardis.tardis_portal.models.experiment.Experiment) – A Experiment object. Returns: A filesystem safe string as a Experiment name. Return type: basestring
-
tardis.tardis_portal.util.
get_free_space
(fs_dir)¶ Return free space on the file system holding the given directory (in bytes). This should work on Linux, BSD, Mac OSX and Windows.
-
tardis.tardis_portal.util.
get_local_time
(dt)¶ Ensure datetime is timezone-aware and in local time.
If the USE_TZ setting in the current dev version of Django comes in, this should keep providing correct behaviour.
-
tardis.tardis_portal.util.
get_utc_time
(dt)¶ Ensure datetime is timezone-aware and in UTC time.
If the USE_TZ setting in the current dev version of Django comes in, this should keep providing correct behaviour.
-
tardis.tardis_portal.util.
render_mustache
(template_name, data)¶
-
tardis.tardis_portal.util.
render_public_access_badge
(experiment)¶
-
tardis.tardis_portal.util.
split_path
(p)¶
tardis.tardis_portal.widgets module¶
-
class
tardis.tardis_portal.widgets.
CommaSeparatedInput
(attrs=None)¶ Bases:
django.forms.widgets.TextInput
-
media
¶
-
render
(name, value, attrs=None, renderer=None)¶
-
value_from_datadict
(data, files, name)¶
-
-
class
tardis.tardis_portal.widgets.
Label
(attrs=None)¶ Bases:
django.forms.widgets.Widget
-
media
¶
-
render
(name, value, attrs=None)¶
-
tag
= 'label'¶
-
-
class
tardis.tardis_portal.widgets.
Span
(attrs=None)¶ Bases:
tardis.tardis_portal.widgets.Label
-
media
¶
-
tag
= 'span'¶
-
tardis.tardis_portal.xmlwriter module¶
-
class
tardis.tardis_portal.xmlwriter.
XMLWriter
¶ -
static
write_template_to_dir
(dest_dir, dest_filename, template_path, context)¶ Parameters: - dest_dir (string) – The directory to store the resulting document in
- dest_filename (string) – The name of the file to be output
- template_path (string) – The relative path to the Django template to be rendered
- context (
django.template.context.Context
) – The Context object (dictionary of variables for template output)
Returns: The full path to the created file
Return type: string
-
static
write_template_to_file
(prefix_dir, objectprefix, uniqueid, templatepath, context)¶ Parameters: - prefix_dir (string) – The subdirectory off of the OAI_DOCS_PATH to store the resulting document in
- objectprefix (string) – The name prefix of the resulting file. Files are output in the format prefix-uniqueid.xml
- uniqueid (string) – The unique ID of the file to be output
- templatepath (string) – The relative path to the Django template to be rendered
- context (
django.template.context.Context
) – The Context object (dictionary of variables for template output)
Returns: The full path to the created file
Return type: string
-
static
write_xml_to_file
(prefix_dir, objectprefix, uniqueid, xmlstring)¶ Parameters: - prefix_dir (string) – The subdirectory off of the OAI_DOCS_PATH to store the resulting document in
- objectprefix (string) – The name prefix of the resulting file. Files are output in the format prefix-uniqueid.xml
- uniqueid (string) – The unique ID of the file to be output
- xmlstring (string) – The relative path to the Django template to be rendered
Returns: The full path to the created file
Return type: string
-
static
-
tardis.tardis_portal.xmlwriter.
logger
= <celery.utils.log.ProcessAwareLogger object>¶ XML Writer
A set of static methods for writing xml files.
Module contents¶
importing all views files here, so that any old code will work as expected, when importing from tardis.tardis_portal.views
models/__init__.py