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.httpbasicendpoint_auth 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.backupdb module
- tardis.tardis_portal.management.commands.checkhashes module
- tardis.tardis_portal.management.commands.chownexperiment module
- tardis.tardis_portal.management.commands.cleanuptokens module
- tardis.tardis_portal.management.commands.createmysuperuser module
- tardis.tardis_portal.management.commands.createtokenuser module
- 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
- tardis.tardis_portal.management.commands.sftpd 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
- 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.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.uploadify_tags 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_ands_doi 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_download module
- tardis.tardis_portal.tests.test_download_apikey module
- tardis.tardis_portal.tests.test_fetcher 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_models module
- tardis.tardis_portal.tests.test_parametersetmanager module
- tardis.tardis_portal.tests.test_publishservice module
- tardis.tardis_portal.tests.test_rmexperiment module
- tardis.tardis_portal.tests.test_staging 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.MultiPartForm module¶
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)¶ 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 0x7f6d0d211f50>}¶
-
-
base_fields
= {'datafile': <django.forms.models.ModelChoiceField object at 0x7f6d0d25e710>, 'last_verified_time': <django.forms.fields.DateTimeField object at 0x7f6d0d25eb50>, 'storage_box': <django.forms.models.ModelChoiceField object at 0x7f6d0d25e8d0>, 'uri': <django.forms.fields.CharField object at 0x7f6d0d25e990>, 'verified': <django.forms.fields.BooleanField object at 0x7f6d0d25ead0>}¶
-
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)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= '__all__'¶
-
model
¶
-
widgets
= {'directory': <django.forms.widgets.TextInput object at 0x7f6d0d25e6d0>}¶
-
-
base_fields
= {'created_time': <django.forms.fields.DateTimeField object at 0x7f6d0d26b290>, 'dataset': <django.forms.models.ModelChoiceField object at 0x7f6d0d25ed50>, 'deleted': <django.forms.fields.BooleanField object at 0x7f6d0d26b650>, 'deleted_time': <django.forms.fields.DateTimeField object at 0x7f6d0d26b710>, 'directory': <django.forms.fields.CharField object at 0x7f6d0d25efd0>, 'filename': <django.forms.fields.CharField object at 0x7f6d0d25ef10>, 'md5sum': <django.forms.fields.CharField object at 0x7f6d0d26b450>, 'mimetype': <django.forms.fields.CharField object at 0x7f6d0d26b390>, 'modification_time': <django.forms.fields.DateTimeField object at 0x7f6d0d26b310>, 'sha512sum': <django.forms.fields.CharField object at 0x7f6d0d26b550>, 'size': <django.forms.fields.IntegerField object at 0x7f6d0d26b110>, 'version': <django.forms.fields.IntegerField object at 0x7f6d0d26b790>}¶
-
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.
FreeTextSearchFieldAdmin
(model, admin_site)¶ Bases:
django.contrib.admin.options.ModelAdmin
-
media
¶
-
-
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
= ['__unicode__', '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
¶
-
-
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)¶ 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 0x7f6d0d211410>, 'value': <django.forms.widgets.TextInput object at 0x7f6d0d211490>}¶
-
-
base_fields
= {'key': <django.forms.fields.CharField object at 0x7f6d0d2118d0>, 'storage_box': <django.forms.models.ModelChoiceField object at 0x7f6d0d211710>, 'value': <django.forms.fields.CharField object at 0x7f6d0d211910>}¶
-
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)¶ Bases:
django.forms.models.ModelForm
-
class
Meta
¶ -
fields
= '__all__'¶
-
model
¶
-
widgets
= {'description': <django.forms.widgets.TextInput object at 0x7f6d0d211e50>, 'django_storage_class': <django.forms.widgets.TextInput object at 0x7f6d0d211ad0>, 'name': <django.forms.widgets.TextInput object at 0x7f6d0d211e10>}¶
-
-
base_fields
= {'description': <django.forms.fields.CharField object at 0x7f6d0d25e350>, 'django_storage_class': <django.forms.fields.CharField object at 0x7f6d0d211f90>, 'master_box': <django.forms.models.ModelChoiceField object at 0x7f6d0d25e3d0>, 'max_size': <django.forms.fields.IntegerField object at 0x7f6d0d25e050>, 'name': <django.forms.fields.CharField object at 0x7f6d0d25e290>, 'status': <django.forms.fields.CharField object at 0x7f6d0d25e190>}¶
-
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)¶ 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 0x7f6d0d2116d0>, 'value': <django.forms.widgets.TextInput object at 0x7f6d0d211950>}¶
-
-
base_fields
= {'key': <django.forms.fields.CharField object at 0x7f6d0d211cd0>, 'storage_box': <django.forms.models.ModelChoiceField object at 0x7f6d0d211b10>, 'value': <django.forms.fields.CharField object at 0x7f6d0d211d10>, 'value_type': <django.forms.fields.TypedChoiceField object at 0x7f6d0d211d50>}¶
-
declared_fields
= {}¶
-
media
¶
-
class
tardis.tardis_portal.ands_doi module¶
ands_doi.py
-
class
tardis.tardis_portal.ands_doi.
DOIService
(experiment)¶ Bases:
object
Mints DOIs using ANDS’ Cite My Data service POSTs DataCite XML to a web services endpoint
-
get_doi
()¶ Returns: DOI or None Return type: string
-
get_or_mint_doi
(url)¶ Parameters: url (string) – the URL the DOI will resolve to Returns: the DOI string Return type: string
-
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)¶
-
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 0x7f6d0a622550>, 'datafile': <tastypie.fields.FileField object at 0x7f6d0a622190>, 'dataset': <tastypie.fields.ForeignKey object at 0x7f6d0a60cfd0>, 'deleted': <tastypie.fields.BooleanField object at 0x7f6d0a622690>, 'deleted_time': <tastypie.fields.DateTimeField object at 0x7f6d0a6226d0>, 'directory': <tastypie.fields.CharField object at 0x7f6d0a6224d0>, 'filename': <tastypie.fields.CharField object at 0x7f6d0a622490>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a622450>, 'md5sum': <tastypie.fields.CharField object at 0x7f6d0a622610>, 'mimetype': <tastypie.fields.CharField object at 0x7f6d0a6225d0>, 'modification_time': <tastypie.fields.DateTimeField object at 0x7f6d0a622590>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7f6d0a622150>, 'replicas': <tastypie.fields.ToManyField object at 0x7f6d0a6221d0>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a6223d0>, 'sha512sum': <tastypie.fields.CharField object at 0x7f6d0a622650>, 'size': <tastypie.fields.CharField object at 0x7f6d0a622510>, 'version': <tastypie.fields.IntegerField object at 0x7f6d0a622710>}¶
-
declared_fields
= {'datafile': <tastypie.fields.FileField object at 0x7f6d0a622190>, 'dataset': <tastypie.fields.ForeignKey object at 0x7f6d0a60cfd0>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7f6d0a622150>, 'replicas': <tastypie.fields.ToManyField object at 0x7f6d0a6221d0>}¶
-
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 0x7f6d0a622e50>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a622d90>, 'link_id': <tastypie.fields.IntegerField object at 0x7f6d0a622e90>, 'name': <tastypie.fields.ForeignKey object at 0x7f6d0a622cd0>, 'numerical_value': <tastypie.fields.FloatField object at 0x7f6d0a622e10>, 'parameterset': <tastypie.fields.ForeignKey object at 0x7f6d0a622990>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a622d50>, 'string_value': <tastypie.fields.CharField object at 0x7f6d0a622dd0>, 'value': <tastypie.fields.CharField object at 0x7f6d0a622d10>}¶
-
declared_fields
= {'parameterset': <tastypie.fields.ForeignKey object at 0x7f6d0a622990>}¶
-
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 0x7f6d0a622390>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a622a50>, 'parameters': <tastypie.fields.ToManyField object at 0x7f6d0a622750>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a622a10>, 'schema': <tastypie.fields.ForeignKey object at 0x7f6d0a6229d0>}¶
-
declared_fields
= {'datafile': <tastypie.fields.ForeignKey object at 0x7f6d0a622390>, 'parameters': <tastypie.fields.ToManyField object at 0x7f6d0a622750>}¶
-
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 0x7f6d0a5fead0>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a5fea10>, 'link_id': <tastypie.fields.IntegerField object at 0x7f6d0a5feb10>, 'name': <tastypie.fields.ForeignKey object at 0x7f6d0a5fe950>, 'numerical_value': <tastypie.fields.FloatField object at 0x7f6d0a5fea90>, 'parameterset': <tastypie.fields.ForeignKey object at 0x7f6d0a5fe610>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5fe9d0>, 'string_value': <tastypie.fields.CharField object at 0x7f6d0a5fea50>, 'value': <tastypie.fields.CharField object at 0x7f6d0a5fe990>}¶
-
declared_fields
= {'parameterset': <tastypie.fields.ForeignKey object at 0x7f6d0a5fe610>}¶
-
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 0x7f6d0a5fe0d0>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a5fe6d0>, 'parameters': <tastypie.fields.ToManyField object at 0x7f6d0a5fe450>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5fe690>, 'schema': <tastypie.fields.ForeignKey object at 0x7f6d0a5fe650>}¶
-
declared_fields
= {'dataset': <tastypie.fields.ForeignKey object at 0x7f6d0a5fe0d0>, 'parameters': <tastypie.fields.ToManyField object at 0x7f6d0a5fe450>}¶
-
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
= {'description': <tastypie.fields.CharField object at 0x7f6d0a622090>, 'directory': <tastypie.fields.CharField object at 0x7f6d0a6220d0>, 'experiments': <tastypie.fields.ToManyField object at 0x7f6d0a60cb90>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a622050>, 'immutable': <tastypie.fields.BooleanField object at 0x7f6d0a622110>, 'instrument': <tastypie.fields.ForeignKey object at 0x7f6d0a60ccd0>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7f6d0a60cc90>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a60cf50>}¶
-
declared_fields
= {'experiments': <tastypie.fields.ToManyField object at 0x7f6d0a60cb90>, 'instrument': <tastypie.fields.ForeignKey object at 0x7f6d0a60ccd0>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7f6d0a60cc90>}¶
-
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 0x7f6d0a5f9d10>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a5f9c50>, 'link_id': <tastypie.fields.IntegerField object at 0x7f6d0a5f9d50>, 'name': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9b90>, 'numerical_value': <tastypie.fields.FloatField object at 0x7f6d0a5f9cd0>, 'parameterset': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9850>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5f9c10>, 'string_value': <tastypie.fields.CharField object at 0x7f6d0a5f9c90>, 'value': <tastypie.fields.CharField object at 0x7f6d0a5f9bd0>}¶
-
declared_fields
= {'parameterset': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9850>}¶
-
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 0x7f6d0a5f9510>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a5f9910>, 'parameters': <tastypie.fields.ToManyField object at 0x7f6d0a5f9610>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5f98d0>, 'schema': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9890>}¶
-
declared_fields
= {'experiment': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9510>, 'parameters': <tastypie.fields.ToManyField object at 0x7f6d0a5f9610>}¶
-
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 0x7f6d0a5fe190>, 'created_by': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9b50>, 'created_time': <tastypie.fields.DateTimeField object at 0x7f6d0a5fe310>, 'description': <tastypie.fields.CharField object at 0x7f6d0a5fe250>, 'end_time': <tastypie.fields.DateTimeField object at 0x7f6d0a5fe2d0>, 'handle': <tastypie.fields.CharField object at 0x7f6d0a5fe390>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a5fe110>, 'institution_name': <tastypie.fields.CharField object at 0x7f6d0a5fe210>, 'locked': <tastypie.fields.BooleanField object at 0x7f6d0a5fe3d0>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7f6d0a5f9d90>, 'public_access': <tastypie.fields.IntegerField object at 0x7f6d0a5fe410>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5fe050>, 'start_time': <tastypie.fields.DateTimeField object at 0x7f6d0a5fe290>, 'title': <tastypie.fields.CharField object at 0x7f6d0a5fe1d0>, 'update_time': <tastypie.fields.DateTimeField object at 0x7f6d0a5fe350>, 'url': <tastypie.fields.CharField object at 0x7f6d0a5fe150>}¶
-
declared_fields
= {'created_by': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9b50>, 'parameter_sets': <tastypie.fields.ToManyField object at 0x7f6d0a5f9d90>}¶
-
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.
-
obj_get_list
(bundle, **kwargs)¶ responds to EPN query for Australian Synchrotron
-
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 0x7f6d0a60c910>, 'manager_group': <tastypie.fields.ForeignKey object at 0x7f6d0a60c550>, 'name': <tastypie.fields.CharField object at 0x7f6d0a60c950>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a60c8d0>}¶
-
declared_fields
= {'manager_group': <tastypie.fields.ForeignKey object at 0x7f6d0a60c550>}¶
-
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 0x7f6d0a956790>, 'name': <tastypie.fields.CharField object at 0x7f6d0a9567d0>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a956750>}¶
-
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 0x7f6d0a60c890>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a60cc10>, 'name': <tastypie.fields.CharField object at 0x7f6d0a60cc50>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a60cbd0>}¶
-
declared_fields
= {'facility': <tastypie.fields.ForeignKey object at 0x7f6d0a60c890>}¶
-
class
-
class
tardis.tardis_portal.api.
LocationResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
base_fields
= {'description': <tastypie.fields.CharField object at 0x7f6d0a62a290>, 'django_storage_class': <tastypie.fields.CharField object at 0x7f6d0a62a190>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a62a150>, 'max_size': <tastypie.fields.CharField object at 0x7f6d0a62a1d0>, 'name': <tastypie.fields.CharField object at 0x7f6d0a62a250>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a62a110>, 'status': <tastypie.fields.CharField object at 0x7f6d0a62a210>}¶
-
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.
-
serializer
= <tardis.tardis_portal.api.PrettyJSONSerializer object>¶
-
-
base_fields
= {u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a956b90>}¶
-
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 0x7f6d0a62ab90>, 'canDelete': <tastypie.fields.BooleanField object at 0x7f6d0a62aa90>, 'canRead': <tastypie.fields.BooleanField object at 0x7f6d0a62aa10>, 'canWrite': <tastypie.fields.BooleanField object at 0x7f6d0a62aa50>, 'content_object': <tastypie.contrib.contenttypes.fields.GenericForeignKeyField object at 0x7f6d0a62a4d0>, 'effectiveDate': <tastypie.fields.DateTimeField object at 0x7f6d0a62ab10>, 'entityId': <tastypie.fields.CharField object at 0x7f6d0a62a990>, 'expiryDate': <tastypie.fields.DateTimeField object at 0x7f6d0a62ab50>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a62a910>, 'isOwner': <tastypie.fields.BooleanField object at 0x7f6d0a62aad0>, 'object_id': <tastypie.fields.IntegerField object at 0x7f6d0a62a9d0>, 'pluginId': <tastypie.fields.CharField object at 0x7f6d0a62a950>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a62a8d0>}¶
-
declared_fields
= {'content_object': <tastypie.contrib.contenttypes.fields.GenericForeignKeyField object at 0x7f6d0a62a4d0>}¶
-
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 0x7f6d0a5f9310>, 'comparison_type': <tastypie.fields.IntegerField object at 0x7f6d0a5f9290>, 'data_type': <tastypie.fields.IntegerField object at 0x7f6d0a5f9210>, 'full_name': <tastypie.fields.CharField object at 0x7f6d0a5f9190>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a5f9110>, 'immutable': <tastypie.fields.BooleanField object at 0x7f6d0a5f9250>, 'is_searchable': <tastypie.fields.BooleanField object at 0x7f6d0a5f92d0>, 'name': <tastypie.fields.CharField object at 0x7f6d0a5f9150>, 'order': <tastypie.fields.IntegerField object at 0x7f6d0a5f9350>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5f90d0>, 'schema': <tastypie.fields.ForeignKey object at 0x7f6d0a956cd0>, 'units': <tastypie.fields.CharField object at 0x7f6d0a5f91d0>}¶
-
declared_fields
= {'schema': <tastypie.fields.ForeignKey object at 0x7f6d0a956cd0>}¶
-
class
-
class
tardis.tardis_portal.api.
ParameterResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
base_fields
= {'name': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9090>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5f9450>, 'value': <tastypie.fields.CharField object at 0x7f6d0a5f9390>}¶
-
declared_fields
= {'name': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9090>, 'value': <tastypie.fields.CharField object at 0x7f6d0a5f9390>}¶
-
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 0x7f6d0a5f9590>, 'schema': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9410>}¶
-
declared_fields
= {'schema': <tastypie.fields.ForeignKey object at 0x7f6d0a5f9410>}¶
-
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 0x7f6d0a62a5d0>, 'datafile': <tastypie.fields.ForeignKey object at 0x7f6d0a62a0d0>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a62a550>, 'last_verified_time': <tastypie.fields.DateTimeField object at 0x7f6d0a62a650>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a62a510>, 'uri': <tastypie.fields.CharField object at 0x7f6d0a62a590>, 'verified': <tastypie.fields.BooleanField object at 0x7f6d0a62a610>}¶
-
declared_fields
= {'datafile': <tastypie.fields.ForeignKey object at 0x7f6d0a62a0d0>}¶
-
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 0x7f6d0a956ed0>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a956d50>, 'immutable': <tastypie.fields.BooleanField object at 0x7f6d0a956e90>, 'name': <tastypie.fields.CharField object at 0x7f6d0a956dd0>, 'namespace': <tastypie.fields.CharField object at 0x7f6d0a956d90>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a956d10>, 'subtype': <tastypie.fields.CharField object at 0x7f6d0a956e50>, 'type': <tastypie.fields.IntegerField object at 0x7f6d0a956e10>}¶
-
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 0x7f6d0a60c5d0>, 'key': <tastypie.fields.CharField object at 0x7f6d0a60c610>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a60c590>, 'storage_box': <tastypie.fields.ForeignKey object at 0x7f6d0a60c1d0>, 'value': <tastypie.fields.CharField object at 0x7f6d0a60c650>}¶
-
declared_fields
= {'storage_box': <tastypie.fields.ForeignKey object at 0x7f6d0a60c1d0>}¶
-
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 0x7f6d0a60c250>, 'key': <tastypie.fields.CharField object at 0x7f6d0a60c290>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a60c210>, 'storage_box': <tastypie.fields.ForeignKey object at 0x7f6d0a5fed90>, 'value': <tastypie.fields.CharField object at 0x7f6d0a60c2d0>, 'value_type': <tastypie.fields.CharField object at 0x7f6d0a60c310>}¶
-
declared_fields
= {'storage_box': <tastypie.fields.ForeignKey object at 0x7f6d0a5fed90>}¶
-
class
-
class
tardis.tardis_portal.api.
StorageBoxResource
(api_name=None)¶ Bases:
tardis.tardis_portal.api.MyTardisModelResource
-
base_fields
= {'attributes': <tastypie.fields.ToManyField object at 0x7f6d0a5feb50>, 'description': <tastypie.fields.CharField object at 0x7f6d0a5fef50>, 'django_storage_class': <tastypie.fields.CharField object at 0x7f6d0a5fee50>, u'id': <tastypie.fields.IntegerField object at 0x7f6d0a5fee10>, 'max_size': <tastypie.fields.CharField object at 0x7f6d0a5fee90>, 'name': <tastypie.fields.CharField object at 0x7f6d0a5fef10>, 'options': <tastypie.fields.ToManyField object at 0x7f6d0a5fe910>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a5fedd0>, 'status': <tastypie.fields.CharField object at 0x7f6d0a5feed0>}¶
-
declared_fields
= {'attributes': <tastypie.fields.ToManyField object at 0x7f6d0a5feb50>, 'options': <tastypie.fields.ToManyField object at 0x7f6d0a5fe910>}¶
-
-
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 0x7f6d0a956ad0>, 'first_name': <tastypie.fields.CharField object at 0x7f6d0a956a50>, 'groups': <tastypie.fields.ManyToManyField object at 0x7f6d0a956710>, 'last_name': <tastypie.fields.CharField object at 0x7f6d0a956a90>, u'resource_uri': <tastypie.fields.CharField object at 0x7f6d0a9569d0>, 'username': <tastypie.fields.CharField object at 0x7f6d0a956a10>}¶
-
declared_fields
= {'groups': <tastypie.fields.ManyToManyField object at 0x7f6d0a956710>}¶
-
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.
manage_account_processor
(request)¶
-
tardis.tardis_portal.context_processors.
registration_processor
(request)¶
-
tardis.tardis_portal.context_processors.
single_search_processor
(request)¶
-
tardis.tardis_portal.context_processors.
tokenuser_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.download module¶
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.fetcher module¶
-
tardis.tardis_portal.fetcher.
get_credential_handler
()¶
-
tardis.tardis_portal.fetcher.
get_privileged_opener
()¶
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)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7f6d0a7d0ad0>, 'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d0bd0>}¶
-
declared_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7f6d0a7d0ad0>, 'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d0bd0>}¶
-
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)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d0810>, 'autocomp_user': <django.forms.fields.CharField object at 0x7f6d0a7d0710>, 'delete': <django.forms.fields.BooleanField object at 0x7f6d0a7d0950>, 'entered_user': <django.forms.fields.CharField object at 0x7f6d0a7d0650>, 'read': <django.forms.fields.BooleanField object at 0x7f6d0a7d0850>, 'write': <django.forms.fields.BooleanField object at 0x7f6d0a7d08d0>}¶
-
declared_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d0810>, 'autocomp_user': <django.forms.fields.CharField object at 0x7f6d0a7d0710>, 'delete': <django.forms.fields.BooleanField object at 0x7f6d0a7d0950>, 'entered_user': <django.forms.fields.CharField object at 0x7f6d0a7d0650>, 'read': <django.forms.fields.BooleanField object at 0x7f6d0a7d0850>, 'write': <django.forms.fields.BooleanField object at 0x7f6d0a7d08d0>}¶
-
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)¶ Bases:
django.forms.forms.Form
-
class
SelectDateWidget
(attrs=None, years=None, months=None, empty_label=None)¶ Bases:
django.forms.widgets.Widget
A Widget that splits date input into three <select> boxes.
This also serves as an example of a Widget that has more than one HTML element and hence implements value_from_datadict.
-
create_select
(name, field, value, val, choices, none_value)¶
-
day_field
= u'%s_day'¶
-
id_for_label
(id_)¶
-
media
¶
-
month_field
= u'%s_month'¶
-
none_value
= (0, u'---')¶
-
render
(name, value, attrs=None)¶
-
value_from_datadict
(data, files, name)¶
-
year_field
= u'%s_year'¶
-
-
base_fields
= {'canDelete': <django.forms.fields.BooleanField object at 0x7f6d0a7d0490>, 'canRead': <django.forms.fields.BooleanField object at 0x7f6d0a7d0150>, 'canWrite': <django.forms.fields.BooleanField object at 0x7f6d0a7d0410>, 'effectiveDate': <django.forms.fields.DateTimeField object at 0x7f6d0a7d0550>, 'expiryDate': <django.forms.fields.DateTimeField object at 0x7f6d0a7d05d0>}¶
-
declared_fields
= {'canDelete': <django.forms.fields.BooleanField object at 0x7f6d0a7d0490>, 'canRead': <django.forms.fields.BooleanField object at 0x7f6d0a7d0150>, 'canWrite': <django.forms.fields.BooleanField object at 0x7f6d0a7d0410>, 'effectiveDate': <django.forms.fields.DateTimeField object at 0x7f6d0a7d0550>, 'expiryDate': <django.forms.fields.DateTimeField object at 0x7f6d0a7d05d0>}¶
-
media
¶
-
class
-
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)¶ 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
¶ Bases:
django.core.exceptions.ObjectDoesNotExist
-
exception
MultipleObjectsReturned
¶ Bases:
django.core.exceptions.MultipleObjectsReturned
-
OWNER_OWNED
= 1¶
-
SYSTEM_OWNED
= 2¶
-
content_object
¶ Provides a generic relation to any object through content-type/object-id fields.
-
content_type
¶
-
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.
-
objects
= <django.db.models.manager.Manager object>¶
-
exception
-
class
SelectDateWidget
(attrs=None, years=None, months=None, empty_label=None)¶ Bases:
django.forms.widgets.Widget
A Widget that splits date input into three <select> boxes.
This also serves as an example of a Widget that has more than one HTML element and hence implements value_from_datadict.
-
create_select
(name, field, value, val, choices, none_value)¶
-
day_field
= u'%s_day'¶
-
id_for_label
(id_)¶
-
media
¶
-
month_field
= u'%s_month'¶
-
none_value
= (0, u'---')¶
-
render
(name, value, attrs=None)¶
-
value_from_datadict
(data, files, name)¶
-
year_field
= u'%s_year'¶
-
-
fields
= ['canDelete', 'canRead', 'canWrite', 'effectiveDate', 'expiryDate', 'isOwner']¶
-
model
¶ alias of
tardis.tardis_portal.models.access_control.ObjectACL
-
widgets
= {'effectiveDate': <django.forms.extras.widgets.SelectDateWidget object at 0x7f6d0a7cbed0>, 'expiryDate': <django.forms.extras.widgets.SelectDateWidget object at 0x7f6d0a7cbe90>}¶
-
class
-
base_fields
= {'canDelete': <django.forms.fields.BooleanField object at 0x7f6d0a7d0250>, 'canRead': <django.forms.fields.BooleanField object at 0x7f6d0a7d0110>, 'canWrite': <django.forms.fields.BooleanField object at 0x7f6d0a7d01d0>, 'effectiveDate': <django.forms.fields.DateField object at 0x7f6d0a7d0350>, 'expiryDate': <django.forms.fields.DateField object at 0x7f6d0a7d0390>, 'isOwner': <django.forms.fields.BooleanField object at 0x7f6d0a7d02d0>}¶
-
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)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7f6d0a7d0cd0>, 'adduser': <django.forms.fields.CharField object at 0x7f6d0a7d0e10>, 'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d0dd0>}¶
-
declared_fields
= {'addgroup': <django.forms.fields.CharField object at 0x7f6d0a7d0cd0>, 'adduser': <django.forms.fields.CharField object at 0x7f6d0a7d0e10>, 'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d0dd0>}¶
-
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)¶ Bases:
tardis.tardis_portal.forms.RegistrationForm
-
base_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d22d0>, 'email': <django.forms.fields.EmailField object at 0x7f6d0a7cb910>, 'password1': <django.forms.fields.CharField object at 0x7f6d0a7cb9d0>, 'password2': <django.forms.fields.CharField object at 0x7f6d0a7cbad0>, 'username': <django.forms.fields.RegexField object at 0x7f6d0a7cb750>}¶
-
declared_fields
= {'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d22d0>, 'email': <django.forms.fields.EmailField object at 0x7f6d0a7cb910>, 'password1': <django.forms.fields.CharField object at 0x7f6d0a7cb9d0>, 'password2': <django.forms.fields.CharField object at 0x7f6d0a7cbad0>, 'username': <django.forms.fields.RegexField object at 0x7f6d0a7cb750>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
DatafileSearchForm
(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)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'filename': <django.forms.fields.CharField object at 0x7f6d0a7d2390>}¶
-
declared_fields
= {'filename': <django.forms.fields.CharField object at 0x7f6d0a7d2390>}¶
-
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)¶ Bases:
django.forms.models.ModelForm
-
base_fields
= {'description': <django.forms.fields.CharField object at 0x7f6d0a7dd450>, 'directory': <django.forms.fields.CharField object at 0x7f6d0a7dd690>, 'instrument': <django.forms.models.ModelChoiceField object at 0x7f6d0a7dd790>}¶
-
declared_fields
= {'description': <django.forms.fields.CharField object at 0x7f6d0a7dd450>}¶
-
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)¶ 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 0x7f6d0a7dd650>, 'email': <django.forms.fields.CharField object at 0x7f6d0a7ddb50>, 'institution': <django.forms.fields.CharField object at 0x7f6d0a7dda50>, 'order': <django.forms.fields.IntegerField object at 0x7f6d0a7ddc90>, 'url': <django.forms.fields.URLField object at 0x7f6d0a7ddd90>}¶
-
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 0x7f6d0a7ec250>, 'institution_name': <django.forms.fields.CharField object at 0x7f6d0a7ec150>, 'title': <django.forms.fields.CharField object at 0x7f6d0a7ec050>, 'url': <django.forms.fields.CharField object at 0x7f6d0a7dde50>}¶
-
declared_fields
= {'url': <django.forms.fields.CharField object at 0x7f6d0a7dde50>}¶
-
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.
IRDatafileSearchForm
(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)¶ Bases:
tardis.tardis_portal.forms.DatafileSearchForm
-
base_fields
= {'filename': <django.forms.fields.CharField object at 0x7f6d0a7d2390>}¶
-
declared_fields
= {'filename': <django.forms.fields.CharField object at 0x7f6d0a7d2390>}¶
-
media
¶
-
-
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)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'params': <django.forms.fields.FileField object at 0x7f6d0a7d2b90>, 'password': <django.forms.fields.CharField object at 0x7f6d0a7d2ad0>, 'username': <django.forms.fields.CharField object at 0x7f6d0a7d2a10>}¶
-
declared_fields
= {'params': <django.forms.fields.FileField object at 0x7f6d0a7d2b90>, 'password': <django.forms.fields.CharField object at 0x7f6d0a7d2ad0>, 'username': <django.forms.fields.CharField object at 0x7f6d0a7d2a10>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
LoginForm
(*args, **kwargs)¶ Bases:
django.contrib.auth.forms.AuthenticationForm
-
base_fields
= {'password': <django.forms.fields.CharField object at 0x7f6d0d2d81d0>, 'username': <django.forms.fields.CharField object at 0x7f6d0d2d8110>}¶
-
declared_fields
= {'password': <django.forms.fields.CharField object at 0x7f6d0d2d81d0>, 'username': <django.forms.fields.CharField object at 0x7f6d0d2d8110>}¶
-
media
¶
-
-
class
tardis.tardis_portal.forms.
MXDatafileSearchForm
(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)¶ Bases:
tardis.tardis_portal.forms.DatafileSearchForm
-
base_fields
= {'crystalName': <django.forms.fields.CharField object at 0x7f6d0a7d2650>, 'diffractometerType': <django.forms.fields.CharField object at 0x7f6d0a7d2550>, 'filename': <django.forms.fields.CharField object at 0x7f6d0a7d2390>, 'resolutionLimit': <django.forms.fields.IntegerField object at 0x7f6d0a7d2710>, 'xraySource': <django.forms.fields.CharField object at 0x7f6d0a7d2590>, 'xrayWavelengthFrom': <django.forms.fields.IntegerField object at 0x7f6d0a7d27d0>, 'xrayWavelengthTo': <django.forms.fields.IntegerField object at 0x7f6d0a7d2850>}¶
-
declared_fields
= {'crystalName': <django.forms.fields.CharField object at 0x7f6d0a7d2650>, 'diffractometerType': <django.forms.fields.CharField object at 0x7f6d0a7d2550>, 'filename': <django.forms.fields.CharField object at 0x7f6d0a7d2390>, 'resolutionLimit': <django.forms.fields.IntegerField object at 0x7f6d0a7d2710>, 'xraySource': <django.forms.fields.CharField object at 0x7f6d0a7d2590>, 'xrayWavelengthFrom': <django.forms.fields.IntegerField object at 0x7f6d0a7d27d0>, 'xrayWavelengthTo': <django.forms.fields.IntegerField object at 0x7f6d0a7d2850>}¶
-
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)¶ 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 0x7f6d0a7ecc50>, 'first_name': <django.forms.fields.CharField object at 0x7f6d0a7ec950>, 'last_name': <django.forms.fields.CharField object at 0x7f6d0a7eca90>}¶
-
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)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'adduser': <django.forms.fields.CharField object at 0x7f6d0a7d2090>, 'admin': <django.forms.fields.BooleanField object at 0x7f6d0a7d2150>, 'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d2050>}¶
-
declared_fields
= {'adduser': <django.forms.fields.CharField object at 0x7f6d0a7d2090>, 'admin': <django.forms.fields.BooleanField object at 0x7f6d0a7d2150>, 'authMethod': <django.forms.fields.CharField object at 0x7f6d0a7d2050>}¶
-
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 0x7f6d0b7e5ed0>}¶
-
declared_fields
= {'q': <django.forms.fields.CharField object at 0x7f6d0b7e5ed0>}¶
-
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)¶ Bases:
django.forms.forms.Form
-
base_fields
= {'experiment_owner': <django.forms.fields.CharField object at 0x7f6d0a7dd050>, 'from_url': <django.forms.fields.CharField object at 0x7f6d0a7dd250>, 'originid': <django.forms.fields.CharField object at 0x7f6d0a7dd150>, 'password': <django.forms.fields.CharField object at 0x7f6d0a7d2dd0>, 'username': <django.forms.fields.CharField object at 0x7f6d0a7d2d10>, 'xml_filename': <django.forms.fields.CharField object at 0x7f6d0a7d2f10>, 'xmldata': <django.forms.fields.FileField object at 0x7f6d0a7d2e90>}¶
-
declared_fields
= {'experiment_owner': <django.forms.fields.CharField object at 0x7f6d0a7dd050>, 'from_url': <django.forms.fields.CharField object at 0x7f6d0a7dd250>, 'originid': <django.forms.fields.CharField object at 0x7f6d0a7dd150>, 'password': <django.forms.fields.CharField object at 0x7f6d0a7d2dd0>, 'username': <django.forms.fields.CharField object at 0x7f6d0a7d2d10>, 'xml_filename': <django.forms.fields.CharField object at 0x7f6d0a7d2f10>, 'xmldata': <django.forms.fields.FileField object at 0x7f6d0a7d2e90>}¶
-
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)¶ 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 0x7f6d0a7cb910>, 'password1': <django.forms.fields.CharField object at 0x7f6d0a7cb9d0>, 'password2': <django.forms.fields.CharField object at 0x7f6d0a7cbad0>, 'username': <django.forms.fields.RegexField object at 0x7f6d0a7cb750>}¶
-
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 0x7f6d0a7cb910>, 'password1': <django.forms.fields.CharField object at 0x7f6d0a7cb9d0>, 'password2': <django.forms.fields.CharField object at 0x7f6d0a7cbad0>, 'username': <django.forms.fields.RegexField object at 0x7f6d0a7cb750>}¶
-
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)¶ 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 0x7f6d0a7ec4d0>}¶
-
-
base_fields
= {'license': <django.forms.models.ModelChoiceField object at 0x7f6d0a7ec710>, 'public_access': <django.forms.fields.TypedChoiceField object at 0x7f6d0a7ec650>}¶
-
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, 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.
createSearchDatafileForm
(searchQueryType)¶
-
tardis.tardis_portal.forms.
createSearchDatafileSelectionForm
(initial=None)¶
-
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¶
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.sftp module¶
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.
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.staging module¶
staging.py
-
tardis.tardis_portal.staging.
get_dataset_path
(dataset)¶
-
tardis.tardis_portal.staging.
get_full_staging_path
(username)¶
-
tardis.tardis_portal.staging.
get_staging_path
()¶ return the path to the staging directory
-
tardis.tardis_portal.staging.
get_staging_url_and_size
(username, filepath)¶ Returns a file:// URL and the size of the file.
-
tardis.tardis_portal.staging.
get_sync_location
()¶
-
tardis.tardis_portal.staging.
get_sync_root
(prefix='')¶
-
tardis.tardis_portal.staging.
get_sync_url_and_protocol
(sync_path, filepath)¶
-
tardis.tardis_portal.staging.
staging_list
(pathname='/home/docs/checkouts/readthedocs.org/user_builds/mytardis/checkouts/v3.8.1/var/test/staging', dirname='/home/docs/checkouts/readthedocs.org/user_builds/mytardis/checkouts/v3.8.1/var/test/staging', root=False)¶
-
tardis.tardis_portal.staging.
write_uploaded_file_to_dataset
(dataset, uploaded_file_post, subdir=None)¶ Broken, now that the storagebox takes care of writing files. Writes file POST data to the dataset directory in the file store
tardis.tardis_portal.tasks module¶
-
tardis.tardis_portal.tasks.
init_filters
()¶ load filters and avoid circular import
tardis.tardis_portal.util module¶
tardis.tardis_portal.widgets module¶
-
class
tardis.tardis_portal.widgets.
CommaSeparatedInput
(attrs=None)¶ Bases:
django.forms.widgets.TextInput
-
media
¶
-
render
(name, value, attrs=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_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 – The relative path to the Django template to be
rendered :type template_path: string :param context: The Context object (dictionary of variables for template output) :type context:
django.template.context.Context
:returns: The full path to the created file :rtype: string
-
static
write_template_to_file
(objectprefix, uniqueid, templatepath, context)¶ Parameters: prefix_dir – The subdirectory off of the OAI_DOCS_PATH to store the resulting document in :type prefix_dir: string :param objectprefix: The name prefix of the resulting file. Files are output in the format prefix-uniqueid.xml :type objectprefix: string :param uniqueid: The unique ID of the file to be output :type uniqueid: string :param templatepath: The relative path to the Django template to be rendered :type templatepath: string :param context: The Context object (dictionary of variables for template output) :type context:
django.template.context.Context
:returns: The full path to the created file :rtype: string
-
static
write_xml_to_file
(objectprefix, uniqueid, xmlstring)¶ Parameters: prefix_dir – The subdirectory off of the OAI_DOCS_PATH to store the resulting document in :type prefix_dir: string :param objectprefix: The name prefix of the resulting file. Files are output in the format prefix-uniqueid.xml :type objectprefix: string :param uniqueid: The unique ID of the file to be output :type uniqueid: string :param xmlstring: The relative path to the Django template to be rendered :type xmlstring: string :returns: The full path to the created file :rtype: 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¶
models/__init__.py