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
datafile_access_required()dataset_access_required()dataset_download_required()dataset_write_permissions_required()delete_permissions_required()experiment_access_required()experiment_download_required()experiment_ownership_required()get_accessible_datafiles_for_user()get_accessible_experiments()get_accessible_experiments_for_dataset()get_owned_experiments()get_shared_experiments()group_ownership_required()has_datafile_access()has_datafile_download_access()has_dataset_access()has_dataset_download_access()has_dataset_ownership()has_dataset_write()has_delete_permissions()has_experiment_access()has_experiment_download_access()has_experiment_ownership()has_experiment_write()has_read_or_owner_ACL()has_write_permissions()is_group_admin()upload_auth()write_permissions_required()
- 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.graphql package
- Submodules
- tardis.tardis_portal.graphql.datafile module
- tardis.tardis_portal.graphql.datafileobject module
- tardis.tardis_portal.graphql.dataset module
- tardis.tardis_portal.graphql.experiment module
- tardis.tardis_portal.graphql.facility module
- tardis.tardis_portal.graphql.group module
- tardis.tardis_portal.graphql.instrument module
- tardis.tardis_portal.graphql.parameters module
CreateDatafileParameterCreateDatafileParameterSetCreateDatasetParameterCreateDatasetParameterSetCreateExperimentParameterCreateExperimentParameterSetCreateParameterNameCreateSchemaDatafileParameterSetTypeDatafileParameterSetTypeFilterDatafileParameterTypeDatafileParameterTypeFilterDatasetParameterSetTypeDatasetParameterSetTypeFilterDatasetParameterTypeDatasetParameterTypeFilterExperimentParameterSetTypeExperimentParameterSetTypeFilterExperimentParameterTypeExperimentParameterTypeFilterParameterNameTypeParameterNameTypeFilterTardisSchemaTypeTardisSchemaTypeFilterUpdateDatafileParameterUpdateDatafileParameterSetUpdateDatasetParameterUpdateDatasetParameterSetUpdateExperimentParameterUpdateExperimentParameterSetUpdateParameterNameUpdateSchema
- tardis.tardis_portal.graphql.schema module
tardisMutationtardisMutation.api_key_sign_intardisMutation.create_datafiletardisMutation.create_datafileobjecttardisMutation.create_datafileparametertardisMutation.create_datafileparametersettardisMutation.create_datasettardisMutation.create_datasetparametertardisMutation.create_datasetparametersettardisMutation.create_experimenttardisMutation.create_experimentauthortardisMutation.create_experimentparametertardisMutation.create_experimentparametersettardisMutation.create_facilitytardisMutation.create_grouptardisMutation.create_instrumenttardisMutation.create_parameternametardisMutation.create_schematardisMutation.create_storageboxtardisMutation.create_storageboxattributetardisMutation.create_storageboxoptiontardisMutation.refresh_tokentardisMutation.revoke_tokentardisMutation.update_datafiletardisMutation.update_datafileobjecttardisMutation.update_datafileparametertardisMutation.update_datafileparametersettardisMutation.update_datasettardisMutation.update_datasetparametertardisMutation.update_datasetparametersettardisMutation.update_experimenttardisMutation.update_experimentauthortardisMutation.update_experimentparametertardisMutation.update_experimentparametersettardisMutation.update_facilitytardisMutation.update_grouptardisMutation.update_instrumenttardisMutation.update_parameternametardisMutation.update_schematardisMutation.update_storageboxtardisMutation.update_storageboxattributetardisMutation.update_storageboxoptiontardisMutation.upload_datafiletardisMutation.user_sign_intardisMutation.verify_token
tardisQuerytardisQuery.datafileobjectstardisQuery.datafilestardisQuery.datasetstardisQuery.experimentstardisQuery.facilitiestardisQuery.groupstardisQuery.instrumentstardisQuery.parameternamestardisQuery.resolve_datafileobjects()tardisQuery.resolve_datafiles()tardisQuery.resolve_datasets()tardisQuery.resolve_experiments()tardisQuery.resolve_facilities()tardisQuery.resolve_groups()tardisQuery.resolve_instruments()tardisQuery.resolve_parameternames()tardisQuery.resolve_schemas()tardisQuery.resolve_storageboxattributes()tardisQuery.resolve_storageboxes()tardisQuery.resolve_storageboxoptions()tardisQuery.resolve_user()tardisQuery.schemastardisQuery.storageboxattributestardisQuery.storageboxestardisQuery.storageboxoptionstardisQuery.user
- tardis.tardis_portal.graphql.storagebox module
- tardis.tardis_portal.graphql.storageboxattribute module
- tardis.tardis_portal.graphql.storageboxoption module
- tardis.tardis_portal.graphql.user module
- tardis.tardis_portal.graphql.utils module
- Module contents
- tardis.tardis_portal.management package
- 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
- tardis.tardis_portal.migrations.0016_add_timestamps module
- tardis.tardis_portal.migrations.0017_add_cc_licenses module
- tardis.tardis_portal.migrations.0018_make_default_storage_box_status_online module
- Module contents
- tardis.tardis_portal.models package
- Submodules
- tardis.tardis_portal.models.access_control module
GroupAdminObjectACLObjectACL.DoesNotExistObjectACL.MultipleObjectsReturnedObjectACL.OWNER_OWNEDObjectACL.SYSTEM_OWNEDObjectACL.aclOwnershipTypeObjectACL.canDeleteObjectACL.canReadObjectACL.canWriteObjectACL.content_objectObjectACL.content_typeObjectACL.content_type_idObjectACL.effectiveDateObjectACL.entityIdObjectACL.expiryDateObjectACL.get_aclOwnershipType_display()ObjectACL.get_effective_query()ObjectACL.get_related_object()ObjectACL.get_related_object_group()ObjectACL.idObjectACL.isOwnerObjectACL.object_idObjectACL.objectsObjectACL.openidaclmigration_setObjectACL.pluginId
UserAuthenticationUserAuthentication.DoesNotExistUserAuthentication.MultipleObjectsReturnedUserAuthentication.approvedUserAuthentication.authenticationMethodUserAuthentication.getAuthMethodDescription()UserAuthentication.get_authenticationMethod_display()UserAuthentication.idUserAuthentication.objectsUserAuthentication.save()UserAuthentication.userProfileUserAuthentication.userProfile_idUserAuthentication.username
UserProfileUserProfile.DoesNotExistUserProfile.MultipleObjectsReturnedUserProfile.ext_groupsUserProfile.getUserAuthentications()UserProfile.idUserProfile.isDjangoAccountUserProfile.isValidPublicContact()UserProfile.objectsUserProfile.rapidConnectEduPersonTargetedIDUserProfile.userUserProfile.user_idUserProfile.userauthentication_set
create_user_api_key()create_user_profile()get_auth_method_choices()
- tardis.tardis_portal.models.datafile module
DataFileDataFile.DoesNotExistDataFile.MultipleObjectsReturnedDataFile.cache_file()DataFile.created_timeDataFile.datafileparameterset_setDataFile.datasetDataFile.dataset_idDataFile.deletedDataFile.deleted_timeDataFile.directoryDataFile.download_urlDataFile.file_objectDataFile.file_objectsDataFile.filenameDataFile.getParameterSets()DataFile.get_absolute_filepath()DataFile.get_as_temporary_file()DataFile.get_default_storage_box()DataFile.get_file()DataFile.get_image_data()DataFile.get_mimetype()DataFile.get_preferred_dfo()DataFile.get_receiving_storage_box()DataFile.get_size()DataFile.has_imageDataFile.idDataFile.is_image()DataFile.is_local()DataFile.is_onlineDataFile.is_public()DataFile.md5sumDataFile.mimetypeDataFile.modification_timeDataFile.objectsDataFile.progress_setDataFile.recall_urlDataFile.save()DataFile.sha512sumDataFile.sizeDataFile.statusDataFile.sum_sizes()DataFile.update_mimetype()DataFile.verifiedDataFile.verify()DataFile.versionDataFile.view_url
DataFileObjectDataFileObject.DoesNotExistDataFileObject.MultipleObjectsReturnedDataFileObject.apply_filters()DataFileObject.cache_file()DataFileObject.calculate_checksums()DataFileObject.copy_file()DataFileObject.create_set_uri()DataFileObject.created_timeDataFileObject.datafileDataFileObject.datafile_idDataFileObject.delete_data()DataFileObject.file_objectDataFileObject.get_full_path()DataFileObject.get_next_by_created_time()DataFileObject.get_previous_by_created_time()DataFileObject.idDataFileObject.last_verified_timeDataFileObject.modified_timeDataFileObject.move_file()DataFileObject.objectsDataFileObject.priorityDataFileObject.save()DataFileObject.storage_boxDataFileObject.storage_box_idDataFileObject.storage_typeDataFileObject.uriDataFileObject.verifiedDataFileObject.verify()
compute_checksums()delete_dfo()
- tardis.tardis_portal.models.dataset module
DatasetDataset.DoesNotExistDataset.MultipleObjectsReturnedDataset.created_timeDataset.datafile_setDataset.datasetparameterset_setDataset.descriptionDataset.directoryDataset.experimentsDataset.getParameterSets()Dataset.get_absolute_url()Dataset.get_all_storage_boxes_used()Dataset.get_datafiles()Dataset.get_dir_nodes()Dataset.get_dir_tuples()Dataset.get_download_urls()Dataset.get_edit_url()Dataset.get_first_experiment()Dataset.get_images()Dataset.get_path()Dataset.get_size()Dataset.get_thumbnail_url()Dataset.idDataset.imageDataset.immutableDataset.instrumentDataset.instrument_idDataset.is_onlineDataset.modified_timeDataset.objectsDataset.online_files_countDataset.save()
- tardis.tardis_portal.models.experiment module
ExperimentExperiment.DoesNotExistExperiment.MultipleObjectsReturnedExperiment.PUBLICATION_DETAILS_SCHEMAExperiment.PUBLICATION_DRAFT_SCHEMAExperiment.PUBLICATION_RETRACTED_SCHEMAExperiment.PUBLICATION_SCHEMA_ROOTExperiment.PUBLIC_ACCESS_CHOICESExperiment.PUBLIC_ACCESS_EMBARGOExperiment.PUBLIC_ACCESS_FULLExperiment.PUBLIC_ACCESS_METADATAExperiment.PUBLIC_ACCESS_NONEExperiment.approvedExperiment.created_byExperiment.created_by_idExperiment.created_timeExperiment.datasetsExperiment.descriptionExperiment.end_timeExperiment.experimentauthor_setExperiment.experimentparameterset_setExperiment.getParameterSets()Experiment.get_absolute_url()Experiment.get_create_token_url()Experiment.get_ct()Experiment.get_datafiles()Experiment.get_download_urls()Experiment.get_edit_url()Experiment.get_groups()Experiment.get_images()Experiment.get_next_by_created_time()Experiment.get_next_by_update_time()Experiment.get_or_create_directory()Experiment.get_owners()Experiment.get_previous_by_created_time()Experiment.get_previous_by_update_time()Experiment.get_public_access_display()Experiment.get_size()Experiment.handleExperiment.idExperiment.institution_nameExperiment.is_publication()Experiment.is_publication_draft()Experiment.is_retracted_publication()Experiment.licenseExperiment.license_idExperiment.lockedExperiment.objectaclsExperiment.objectsExperiment.public_accessExperiment.public_access_implies_distribution()Experiment.public_download_allowed()Experiment.safeExperiment.save()Experiment.start_timeExperiment.titleExperiment.token_setExperiment.update_timeExperiment.url
ExperimentAuthorExperimentAuthor.DoesNotExistExperimentAuthor.MultipleObjectsReturnedExperimentAuthor.authorExperimentAuthor.emailExperimentAuthor.experimentExperimentAuthor.experiment_idExperimentAuthor.idExperimentAuthor.institutionExperimentAuthor.objectsExperimentAuthor.orderExperimentAuthor.save()ExperimentAuthor.url
- tardis.tardis_portal.models.facility module
- tardis.tardis_portal.models.hooks module
- tardis.tardis_portal.models.instrument module
InstrumentInstrument.DoesNotExistInstrument.MultipleObjectsReturnedInstrument.created_timeInstrument.dataset_setInstrument.facilityInstrument.facility_idInstrument.getParameterSets()Instrument.idInstrument.instrumentparameterset_setInstrument.modified_timeInstrument.nameInstrument.objectsInstrument.save()
- tardis.tardis_portal.models.jti module
- tardis.tardis_portal.models.license module
- tardis.tardis_portal.models.parameters module
DatafileParameterDatafileParameterSetDatafileParameterSet.DoesNotExistDatafileParameterSet.MultipleObjectsReturnedDatafileParameterSet.datafileDatafileParameterSet.datafile_idDatafileParameterSet.datafileparameter_setDatafileParameterSet.idDatafileParameterSet.objectsDatafileParameterSet.parameter_classDatafileParameterSet.schemaDatafileParameterSet.storage_box
DatasetParameterDatasetParameterSetDatasetParameterSet.DoesNotExistDatasetParameterSet.MultipleObjectsReturnedDatasetParameterSet.datasetDatasetParameterSet.dataset_idDatasetParameterSet.datasetparameter_setDatasetParameterSet.idDatasetParameterSet.objectsDatasetParameterSet.parameter_classDatasetParameterSet.schemaDatasetParameterSet.storage_box
ExperimentParameterExperimentParameter.DoesNotExistExperimentParameter.MultipleObjectsReturnedExperimentParameter.idExperimentParameter.link_ctExperimentParameter.link_gfkExperimentParameter.nameExperimentParameter.parameter_typeExperimentParameter.parametersetExperimentParameter.parameterset_idExperimentParameter.save()
ExperimentParameterSetExperimentParameterSet.DoesNotExistExperimentParameterSet.MultipleObjectsReturnedExperimentParameterSet.experimentExperimentParameterSet.experiment_idExperimentParameterSet.experimentparameter_setExperimentParameterSet.idExperimentParameterSet.objectsExperimentParameterSet.parameter_classExperimentParameterSet.schemaExperimentParameterSet.storage_box
FreeTextSearchFieldInstrumentParameterInstrumentParameterSetInstrumentParameterSet.DoesNotExistInstrumentParameterSet.MultipleObjectsReturnedInstrumentParameterSet.idInstrumentParameterSet.instrumentInstrumentParameterSet.instrument_idInstrumentParameterSet.instrumentparameter_setInstrumentParameterSet.objectsInstrumentParameterSet.parameter_classInstrumentParameterSet.schemaInstrumentParameterSet.storage_box
ParameterParameterNameParameterName.CONTAINS_COMPARISONParameterName.DATETIMEParameterName.DoesNotExistParameterName.EXACT_VALUE_COMPARISONParameterName.FILENAMEParameterName.GREATER_THAN_COMPARISONParameterName.GREATER_THAN_EQUAL_COMPARISONParameterName.JSONParameterName.LESS_THAN_COMPARISONParameterName.LESS_THAN_EQUAL_COMPARISONParameterName.LINKParameterName.LONGSTRINGParameterName.MultipleObjectsReturnedParameterName.NOT_EQUAL_COMPARISONParameterName.NUMERICParameterName.RANGE_COMPARISONParameterName.STRINGParameterName.URLParameterName.choicesParameterName.comparison_typeParameterName.data_typeParameterName.datafileparameter_setParameterName.datasetparameter_setParameterName.experimentparameter_setParameterName.freetextsearchfield_setParameterName.full_nameParameterName.getUniqueShortName()ParameterName.get_comparison_type_display()ParameterName.get_data_type_display()ParameterName.idParameterName.immutableParameterName.instrumentparameter_setParameterName.isDateTime()ParameterName.isFilename()ParameterName.isLink()ParameterName.isLongString()ParameterName.isNumeric()ParameterName.isString()ParameterName.isURL()ParameterName.is_json()ParameterName.is_searchableParameterName.nameParameterName.natural_key()ParameterName.objectsParameterName.orderParameterName.schemaParameterName.schema_idParameterName.units
ParameterSetParameterSetManagerMixinSchemaSchema.DATAFILESchema.DATASETSchema.DoesNotExistSchema.EXPERIMENTSchema.INSTRUMENTSchema.MultipleObjectsReturnedSchema.NONESchema.UnsupportedTypeSchema.datafileparameterset_setSchema.datasetparameterset_setSchema.experimentparameterset_setSchema.get_type_display()Schema.hiddenSchema.idSchema.immutableSchema.instrumentparameterset_setSchema.nameSchema.namespaceSchema.natural_key()Schema.objectsSchema.parametername_setSchema.subtypeSchema.type
- tardis.tardis_portal.models.storage module
StorageBoxStorageBox.BUNDLEStorageBox.CACHEStorageBox.DISKStorageBox.DoesNotExistStorageBox.MultipleObjectsReturnedStorageBox.TAPEStorageBox.TEMPORARYStorageBox.TYPESStorageBox.TYPE_UNKNOWNStorageBox.attributesStorageBox.autocacheStorageBox.cache_boxStorageBox.child_boxesStorageBox.copy_files()StorageBox.copy_to_master()StorageBox.create_local_box()StorageBox.datafileparametersetsStorageBox.datasetparametersetsStorageBox.descriptionStorageBox.django_storage_classStorageBox.experimentparametersetsStorageBox.file_objectsStorageBox.get_default_storage()StorageBox.get_initialised_storage_instance()StorageBox.get_options_as_dict()StorageBox.idStorageBox.instrumentparametersetsStorageBox.master_boxStorageBox.master_box_idStorageBox.max_sizeStorageBox.move_files()StorageBox.move_to_master()StorageBox.nameStorageBox.objectsStorageBox.offline_typesStorageBox.online_typesStorageBox.optionsStorageBox.priorityStorageBox.statusStorageBox.storage_typeStorageBox.type_order
StorageBoxAttributeStorageBoxOptionStorageBoxOption.DoesNotExistStorageBoxOption.MultipleObjectsReturnedStorageBoxOption.PICKLEStorageBoxOption.STRINGStorageBoxOption.TYPE_CHOICESStorageBoxOption.get_value_type_display()StorageBoxOption.idStorageBoxOption.keyStorageBoxOption.objectsStorageBoxOption.storage_boxStorageBoxOption.storage_box_idStorageBoxOption.unpickled_valueStorageBoxOption.valueStorageBoxOption.value_type
- tardis.tardis_portal.models.token module
TokenToken.DoesNotExistToken.MultipleObjectsReturnedToken.experimentToken.experiment_idToken.expiry_dateToken.get_next_by_expiry_date()Token.get_previous_by_expiry_date()Token.get_session_expiry()Token.idToken.is_expired()Token.objectsToken.save_with_random_token()Token.tokenToken.userToken.user_id
- 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.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
- tardis.tardis_portal.tests.api package
- Submodules
- tardis.tardis_portal.tests.api.test_auth module
- tardis.tardis_portal.tests.api.test_datafile_metadata_resources module
- tardis.tardis_portal.tests.api.test_datafile_resource module
- tardis.tardis_portal.tests.api.test_dataset_metadata_resources module
- tardis.tardis_portal.tests.api.test_dataset_resource module
- tardis.tardis_portal.tests.api.test_experiment_metadata_resources module
- tardis.tardis_portal.tests.api.test_experiment_resource module
- tardis.tardis_portal.tests.api.test_facility_resource module
- tardis.tardis_portal.tests.api.test_group_resource module
- tardis.tardis_portal.tests.api.test_instrument_resource module
- tardis.tardis_portal.tests.api.test_list_api_endpoints module
- tardis.tardis_portal.tests.api.test_replica_resource module
- tardis.tardis_portal.tests.api.test_schema_resource module
- tardis.tardis_portal.tests.api.test_serializer module
- tardis.tardis_portal.tests.api.test_storagebox_resources module
- tardis.tardis_portal.tests.api.test_user_resource module
- Module contents
- tardis.tardis_portal.tests.auth package
- tardis.tardis_portal.tests.graphql package
- tardis.tardis_portal.tests.management package
- Submodules
- tardis.tardis_portal.tests.management.test_collectstatic module
- tardis.tardis_portal.tests.management.test_createuser module
- tardis.tardis_portal.tests.management.test_dumpschemas module
- tardis.tardis_portal.tests.management.test_loadschemas module
- tardis.tardis_portal.tests.management.test_rmexperiment module
- Module contents
- tardis.tardis_portal.tests.models package
- Submodules
- tardis.tardis_portal.tests.models.test_authors module
- tardis.tardis_portal.tests.models.test_datafile module
- tardis.tardis_portal.tests.models.test_dataset module
- tardis.tardis_portal.tests.models.test_dfo module
- tardis.tardis_portal.tests.models.test_experiment module
- tardis.tardis_portal.tests.models.test_generate_api_key module
- tardis.tardis_portal.tests.models.test_instrument module
- tardis.tardis_portal.tests.models.test_parameter module
- Module contents
- tardis.tardis_portal.tests.views package
- Submodules
- tardis.tardis_portal.tests.views.test_auth_views module
- tardis.tardis_portal.tests.views.test_contextual_views module
- tardis.tardis_portal.tests.views.test_experiment_views module
- tardis.tardis_portal.tests.views.test_template_contexts module
- tardis.tardis_portal.tests.views.test_upload_views module
- Module contents
- tardis.tardis_portal.tests.api package
- Submodules
- tardis.tardis_portal.tests.ldap_ldif module
- tardis.tardis_portal.tests.slapd module
SlapdSlapd.PATH_LDAPADDSlapd.PATH_LDAPSEARCHSlapd.PATH_SCHEMA_DIRSlapd.PATH_SLAPDSlapd.PATH_SLAPTESTSlapd.PATH_TMPDIRSlapd.TEST_UTILS_DIRSlapd.check_paths()Slapd.configure()Slapd.get_address()Slapd.get_dn_suffix()Slapd.get_root_dn()Slapd.get_root_password()Slapd.get_tmpdir()Slapd.get_url()Slapd.ldapadd()Slapd.ldapsearch()Slapd.restart()Slapd.set_debug()Slapd.set_dn_suffix()Slapd.set_port()Slapd.set_root_cn()Slapd.set_root_password()Slapd.set_slapd_debug_level()Slapd.set_tmpdir()Slapd.start()Slapd.started()Slapd.stop()Slapd.wait()
delete_directory_content()find_available_tcp_port()mkdirs()quote()which()
- 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_copy_move module
- tardis.tardis_portal.tests.test_df_save_metadata module
- tardis.tardis_portal.tests.test_download module
- tardis.tardis_portal.tests.test_download_apikey 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_models module
- tardis.tardis_portal.tests.test_parameters module
- tardis.tardis_portal.tests.test_parametersets module
EditParameterSetTestCaseEditParameterSetTestCase.setUp()EditParameterSetTestCase.tearDown()EditParameterSetTestCase.test_add_datafile_params()EditParameterSetTestCase.test_add_dataset_params()EditParameterSetTestCase.test_add_experiment_params()EditParameterSetTestCase.test_edit_datafile_params()EditParameterSetTestCase.test_edit_dataset_params()EditParameterSetTestCase.test_edit_experiment_params()
ParameterSetManagerTestCaseParameterSetManagerTestCase.setUp()ParameterSetManagerTestCase.tearDown()ParameterSetManagerTestCase.test_existing_parameterset()ParameterSetManagerTestCase.test_link_parameter_type()ParameterSetManagerTestCase.test_link_parameter_type_extra()ParameterSetManagerTestCase.test_new_parameterset()ParameterSetManagerTestCase.test_parameterset_as_string()ParameterSetManagerTestCase.test_tz_aware_date_handling()ParameterSetManagerTestCase.test_tz_naive_date_handling()ParameterSetManagerTestCase.test_unresolvable_link_parameter()
- tardis.tardis_portal.tests.test_publishservice 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
FrozenTimeTokenTestCaseTokenTestCase.setUp()TokenTestCase.tearDown()TokenTestCase.test_create_token()TokenTestCase.test_default_expiry()TokenTestCase.test_get_session_expiry()TokenTestCase.test_get_session_expiry_expired_token()TokenTestCase.test_get_session_expiry_near_expiry()TokenTestCase.test_is_expired()TokenTestCase.test_retrieve_access_list_tokens()TokenTestCase.test_save_with_random_token()TokenTestCase.test_save_with_random_token_failures()TokenTestCase.test_save_with_random_token_gives_up()TokenTestCase.test_token_delete()TokenTestCase.urls
- tardis.tardis_portal.tests.tests module
- tardis.tardis_portal.tests.urls module
- Module contents
- Subpackages
- 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(params_dict)
tardis.tardis_portal.admin module
- class tardis.tardis_portal.admin.DataFileObjectInline(parent_model, admin_site)
Bases:
TabularInline- extra = 0
- form
alias of
DataFileObjectInlineForm
- property media
- model
alias of
DataFileObject
- class tardis.tardis_portal.admin.DataFileObjectInlineForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelForm- class Meta
Bases:
object- fields = '__all__'
- model
alias of
DataFileObject
- widgets = {'uri': <django.forms.widgets.TextInput object>}
- base_fields = {'datafile': <django.forms.models.ModelChoiceField object>, 'last_verified_time': <django.forms.fields.DateTimeField object>, 'storage_box': <django.forms.models.ModelChoiceField object>, 'uri': <django.forms.fields.CharField object>, 'verified': <django.forms.fields.BooleanField object>}
- declared_fields = {}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.admin.DatafileAdmin(model, admin_site)
Bases:
ModelAdmin- form
alias of
DatafileAdminForm
- inlines = [<class 'tardis.tardis_portal.admin.DataFileObjectInline'>]
- property media
- search_fields = ['filename', 'id']
- class tardis.tardis_portal.admin.DatafileAdminForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelForm- class Meta
Bases:
object- fields = '__all__'
- widgets = {'directory': <django.forms.widgets.TextInput object>}
- base_fields = {'created_time': <django.forms.fields.DateTimeField object>, 'dataset': <django.forms.models.ModelChoiceField object>, 'deleted': <django.forms.fields.BooleanField object>, 'deleted_time': <django.forms.fields.DateTimeField object>, 'directory': <django.forms.fields.CharField object>, 'filename': <django.forms.fields.CharField object>, 'md5sum': <django.forms.fields.CharField object>, 'mimetype': <django.forms.fields.CharField object>, 'modification_time': <django.forms.fields.DateTimeField object>, 'sha512sum': <django.forms.fields.CharField object>, 'size': <django.forms.fields.IntegerField object>, 'version': <django.forms.fields.IntegerField object>}
- declared_fields = {}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.admin.DatasetAdmin(model, admin_site)
Bases:
ModelAdmin- property media
- search_fields = ['description', 'id']
- class tardis.tardis_portal.admin.ExperimentAdmin(model, admin_site)
Bases:
ModelAdmin- inlines = [<class 'tardis.tardis_portal.admin.ObjectACLInline'>]
- property media
- search_fields = ['title', 'id']
- class tardis.tardis_portal.admin.ExperimentParameterInline(parent_model, admin_site)
Bases:
TabularInline- extra = 0
- formfield_overrides = {<class 'django.db.models.fields.TextField'>: {'widget': <class 'django.forms.widgets.TextInput'>}}
- property media
- model
alias of
ExperimentParameter
- class tardis.tardis_portal.admin.ExperimentParameterSetAdmin(model, admin_site)
Bases:
ModelAdmin- inlines = [<class 'tardis.tardis_portal.admin.ExperimentParameterInline'>]
- property media
- class tardis.tardis_portal.admin.FacilityAdmin(model, admin_site)
Bases:
ModelAdmin- property media
- search_fields = ['name']
- class tardis.tardis_portal.admin.FreeTextSearchFieldAdmin(model, admin_site)
Bases:
ModelAdmin- property media
- class tardis.tardis_portal.admin.InstrumentAdmin(model, admin_site)
Bases:
ModelAdmin- property media
- search_fields = ['name']
- class tardis.tardis_portal.admin.InstrumentParameterInline(parent_model, admin_site)
Bases:
TabularInline- extra = 0
- property media
- model
alias of
InstrumentParameter
- class tardis.tardis_portal.admin.InstrumentParameterSetAdmin(model, admin_site)
Bases:
ModelAdmin- inlines = [<class 'tardis.tardis_portal.admin.InstrumentParameterInline'>]
- property media
- class tardis.tardis_portal.admin.ObjectACLAdmin(model, admin_site)
Bases:
ModelAdmin- list_display = ['__str__', 'pluginId', 'entityId', 'canRead', 'canWrite', 'canDelete', 'isOwner']
- property media
- search_fields = ['content_type', 'object_id']
- class tardis.tardis_portal.admin.ObjectACLInline(parent_model, admin_site)
Bases:
GenericTabularInline- extra = 0
- property media
- class tardis.tardis_portal.admin.ParameterNameAdmin(model, admin_site)
Bases:
ModelAdmin- property media
- search_fields = ['name', 'schema__id']
- class tardis.tardis_portal.admin.ParameterNameInline(parent_model, admin_site)
Bases:
TabularInline- extra = 0
- property media
- model
alias of
ParameterName
- class tardis.tardis_portal.admin.SchemaAdmin(model, admin_site)
Bases:
ModelAdmin- inlines = [<class 'tardis.tardis_portal.admin.ParameterNameInline'>]
- property media
- search_fields = ['name', 'namespace']
- class tardis.tardis_portal.admin.StorageBoxAdmin(model, admin_site)
Bases:
ModelAdmin- form
alias of
StorageBoxForm
- inlines = [<class 'tardis.tardis_portal.admin.StorageBoxOptionInline'>, <class 'tardis.tardis_portal.admin.StorageBoxAttributeInline'>]
- property media
- search_fields = ['name']
- class tardis.tardis_portal.admin.StorageBoxAttributeInline(parent_model, admin_site)
Bases:
TabularInline- extra = 0
- form
alias of
StorageBoxAttributeInlineForm
- property media
- model
alias of
StorageBoxAttribute
- class tardis.tardis_portal.admin.StorageBoxAttributeInlineForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelForm- class Meta
Bases:
object- fields = '__all__'
- model
alias of
StorageBoxAttribute
- widgets = {'key': <django.forms.widgets.TextInput object>, 'value': <django.forms.widgets.TextInput object>}
- base_fields = {'key': <django.forms.fields.CharField object>, 'storage_box': <django.forms.models.ModelChoiceField object>, 'value': <django.forms.fields.CharField object>}
- declared_fields = {}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.admin.StorageBoxForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelForm- class Meta
Bases:
object- fields = '__all__'
- model
alias of
StorageBox
- widgets = {'description': <django.forms.widgets.TextInput object>, 'django_storage_class': <django.forms.widgets.TextInput object>, 'name': <django.forms.widgets.TextInput object>}
- base_fields = {'description': <django.forms.fields.CharField object>, 'django_storage_class': <django.forms.fields.CharField object>, 'master_box': <django.forms.models.ModelChoiceField object>, 'max_size': <django.forms.fields.IntegerField object>, 'name': <django.forms.fields.CharField object>, 'status': <django.forms.fields.CharField object>}
- declared_fields = {}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.admin.StorageBoxOptionInline(parent_model, admin_site)
Bases:
TabularInline- extra = 0
- form
alias of
StorageBoxOptionInlineForm
- property media
- model
alias of
StorageBoxOption
- class tardis.tardis_portal.admin.StorageBoxOptionInlineForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelForm- class Meta
Bases:
object- fields = '__all__'
- model
alias of
StorageBoxOption
- widgets = {'key': <django.forms.widgets.TextInput object>, 'value': <django.forms.widgets.TextInput object>}
- base_fields = {'key': <django.forms.fields.CharField object>, 'storage_box': <django.forms.models.ModelChoiceField object>, 'value': <django.forms.fields.CharField object>, 'value_type': <django.forms.fields.TypedChoiceField object>}
- declared_fields = {}
- property media
Return all media required to render the widgets on this form.
tardis.tardis_portal.api module
RESTful API for MyTardis models and data. Implemented with Tastypie.
- class tardis.tardis_portal.api.ACLAuthorization
Bases:
AuthorizationAuthorisation class for Tastypie.
- create_detail(object_list, bundle)
Returns either
Trueif the user is allowed to create the object in question or throwUnauthorizedif they are not.Returns
Trueby default.
- create_list(object_list, bundle)
Unimplemented, as Tastypie never creates entire new lists, but present for consistency & possible extension.
- delete_detail(object_list, bundle)
Returns either
Trueif the user is allowed to delete the object in question or throwUnauthorizedif they are not.Returns
Trueby default.
- delete_list(object_list, bundle)
Returns a list of all the objects a user is allowed to delete.
Should return an empty list if none are allowed.
Returns the entire list by default.
- read_detail(object_list, bundle)
Returns either
Trueif the user is allowed to read the object in question or throwUnauthorizedif they are not.Returns
Trueby default.
- read_list(object_list, bundle)
Returns a list of all the objects a user is allowed to read.
Should return an empty list if none are allowed.
Returns the entire list by default.
- 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)
Returns a list of all the objects a user is allowed to update.
Should return an empty list if none are allowed.
Returns the entire list by default.
- class tardis.tardis_portal.api.DataFileResource(api_name=None)
Bases:
MyTardisModelResource- class Meta
Bases:
Meta- filtering = {'dataset': 2, 'directory': ('exact', 'startswith'), 'filename': ('exact',)}
- ordering = ['id', 'filename', 'modification_time']
- queryset
- resource_name = 'dataset_file'
- base_fields = {'created_time': <tastypie.fields.DateTimeField object>, 'datafile': <tastypie.fields.FileField object>, 'dataset': <tastypie.fields.ForeignKey object>, 'deleted': <tastypie.fields.BooleanField object>, 'deleted_time': <tastypie.fields.DateTimeField object>, 'directory': <tastypie.fields.CharField object>, 'filename': <tastypie.fields.CharField object>, 'id': <tastypie.fields.IntegerField object>, 'md5sum': <tastypie.fields.CharField object>, 'mimetype': <tastypie.fields.CharField object>, 'modification_time': <tastypie.fields.DateTimeField object>, 'parameter_sets': <tastypie.fields.ToManyField object>, 'replicas': <tastypie.fields.ToManyField object>, 'resource_uri': <tastypie.fields.CharField object>, 'sha512sum': <tastypie.fields.CharField object>, 'size': <tastypie.fields.IntegerField object>, 'version': <tastypie.fields.IntegerField object>}
- declared_fields = {'datafile': <tastypie.fields.FileField object>, 'dataset': <tastypie.fields.ForeignKey object>, 'parameter_sets': <tastypie.fields.ToManyField object>, 'replicas': <tastypie.fields.ToManyField object>}
- 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)
A hook to allow an initial manipulation of data before all methods/fields have built out the hydrated data.
Useful if you need to access more than one hydrated field or want to annotate on additional data.
Must return the modified 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)
Creates a new resource/object with the provided data.
Calls
obj_createwith the provided data and returns a response with the new resource’s location.If a new resource is created, return
HttpCreated(201 Created). IfMeta.always_return_data = True, there will be a populated body of serialized data.
- prepend_urls()
A hook for adding your own URLs or matching before the default 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 tardis.tardis_portal.api.DatafileParameterResource(api_name=None)
Bases:
ParameterResource- class Meta
Bases:
Meta- object_class
alias of
DatafileParameter
- queryset
- base_fields = {'datetime_value': <tastypie.fields.DateTimeField object>, 'id': <tastypie.fields.IntegerField object>, 'link_id': <tastypie.fields.IntegerField object>, 'name': <tastypie.fields.ForeignKey object>, 'numerical_value': <tastypie.fields.FloatField object>, 'parameterset': <tastypie.fields.ForeignKey object>, 'resource_uri': <tastypie.fields.CharField object>, 'string_value': <tastypie.fields.CharField object>, 'value': <tastypie.fields.CharField object>}
- declared_fields = {'parameterset': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.DatafileParameterSetResource(api_name=None)
Bases:
ParameterSetResource- class Meta
Bases:
Meta- object_class
alias of
DatafileParameterSet
- queryset
- base_fields = {'datafile': <tastypie.fields.ForeignKey object>, 'id': <tastypie.fields.IntegerField object>, 'parameters': <tastypie.fields.ToManyField object>, 'resource_uri': <tastypie.fields.CharField object>, 'schema': <tastypie.fields.ForeignKey object>}
- declared_fields = {'datafile': <tastypie.fields.ForeignKey object>, 'parameters': <tastypie.fields.ToManyField object>}
- class tardis.tardis_portal.api.DatasetParameterResource(api_name=None)
Bases:
ParameterResource- class Meta
Bases:
Meta- object_class
alias of
DatasetParameter
- queryset
- base_fields = {'datetime_value': <tastypie.fields.DateTimeField object>, 'id': <tastypie.fields.IntegerField object>, 'link_id': <tastypie.fields.IntegerField object>, 'name': <tastypie.fields.ForeignKey object>, 'numerical_value': <tastypie.fields.FloatField object>, 'parameterset': <tastypie.fields.ForeignKey object>, 'resource_uri': <tastypie.fields.CharField object>, 'string_value': <tastypie.fields.CharField object>, 'value': <tastypie.fields.CharField object>}
- declared_fields = {'parameterset': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.DatasetParameterSetResource(api_name=None)
Bases:
ParameterSetResource- class Meta
Bases:
Meta- object_class
alias of
DatasetParameterSet
- queryset
- base_fields = {'dataset': <tastypie.fields.ForeignKey object>, 'id': <tastypie.fields.IntegerField object>, 'parameters': <tastypie.fields.ToManyField object>, 'resource_uri': <tastypie.fields.CharField object>, 'schema': <tastypie.fields.ForeignKey object>}
- declared_fields = {'dataset': <tastypie.fields.ForeignKey object>, 'parameters': <tastypie.fields.ToManyField object>}
- class tardis.tardis_portal.api.DatasetResource(api_name=None)
Bases:
MyTardisModelResource- class Meta
Bases:
Meta- always_return_data = True
- filtering = {'description': ('exact',), 'directory': ('exact',), 'experiments': 2, 'id': ('exact',), 'instrument': 2}
- ordering = ['id', 'description']
- queryset
- base_fields = {'created_time': <tastypie.fields.DateTimeField object>, 'description': <tastypie.fields.CharField object>, 'directory': <tastypie.fields.CharField object>, 'experiments': <tastypie.fields.ToManyField object>, 'id': <tastypie.fields.IntegerField object>, 'immutable': <tastypie.fields.BooleanField object>, 'instrument': <tastypie.fields.ForeignKey object>, 'modified_time': <tastypie.fields.DateTimeField object>, 'parameter_sets': <tastypie.fields.ToManyField object>, 'resource_uri': <tastypie.fields.CharField object>}
- declared_fields = {'experiments': <tastypie.fields.ToManyField object>, 'instrument': <tastypie.fields.ForeignKey object>, 'parameter_sets': <tastypie.fields.ToManyField object>}
- dehydrate(bundle)
A hook to allow a final manipulation of data once all fields/methods have built out the dehydrated data.
Useful if you need to access more than one dehydrated field or want to annotate on additional data.
Must return the modified bundle.
- get_child_dir_files(request, **kwargs)
Return a list of datafile Ids within a child subdirectory :param request: a HTTP Request instance :type request:
django.http.HttpRequest:param kwargs: :return: a list of datafile IDs :rtype: JsonResponse: :class: django.http.JsonResponse
- get_child_dir_nodes(request, **kwargs)
Return JSON-serialized list of filenames/folders within a child subdirectory
- get_datafiles(request, **kwargs)
- get_root_dir_nodes(request, **kwargs)
Return JSON-serialized list of filenames/folders in the dataset’s root directory
- hydrate_m2m(bundle)
Create experiment-dataset associations first, because they affect authorization for adding other related resources, e.g. metadata
- prepend_urls()
A hook for adding your own URLs or matching before the default URLs.
- class tardis.tardis_portal.api.ExperimentAuthorResource(api_name=None)
Bases:
MyTardisModelResourceAPI for ExperimentAuthors
- class Meta
Bases:
Meta- always_return_data = True
- filtering = {'author': ('exact', 'iexact'), 'email': ('exact', 'iexact'), 'experiment': 2, 'id': ('exact',), 'institution': ('exact', 'iexact'), 'order': ('exact',), 'url': ('exact', 'iexact')}
- object_class
alias of
ExperimentAuthor
- ordering = ['id', 'author', 'email', 'order']
- queryset
- base_fields = {'author': <tastypie.fields.CharField object>, 'email': <tastypie.fields.CharField object>, 'experiment': <tastypie.fields.ForeignKey object>, 'id': <tastypie.fields.IntegerField object>, 'institution': <tastypie.fields.CharField object>, 'order': <tastypie.fields.IntegerField object>, 'resource_uri': <tastypie.fields.CharField object>, 'url': <tastypie.fields.CharField object>}
- declared_fields = {'experiment': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.ExperimentParameterResource(api_name=None)
Bases:
ParameterResource- class Meta
Bases:
Meta- object_class
alias of
ExperimentParameter
- queryset
- base_fields = {'datetime_value': <tastypie.fields.DateTimeField object>, 'id': <tastypie.fields.IntegerField object>, 'link_id': <tastypie.fields.IntegerField object>, 'name': <tastypie.fields.ForeignKey object>, 'numerical_value': <tastypie.fields.FloatField object>, 'parameterset': <tastypie.fields.ForeignKey object>, 'resource_uri': <tastypie.fields.CharField object>, 'string_value': <tastypie.fields.CharField object>, 'value': <tastypie.fields.CharField object>}
- declared_fields = {'parameterset': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.ExperimentParameterSetResource(api_name=None)
Bases:
ParameterSetResourceAPI for ExperimentParameterSets
- class Meta
Bases:
Meta- object_class
alias of
ExperimentParameterSet
- queryset
- base_fields = {'experiment': <tastypie.fields.ForeignKey object>, 'id': <tastypie.fields.IntegerField object>, 'parameters': <tastypie.fields.ToManyField object>, 'resource_uri': <tastypie.fields.CharField object>, 'schema': <tastypie.fields.ForeignKey object>}
- declared_fields = {'experiment': <tastypie.fields.ForeignKey object>, 'parameters': <tastypie.fields.ToManyField object>}
- class tardis.tardis_portal.api.ExperimentResource(api_name=None)
Bases:
MyTardisModelResourceAPI 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:
Meta- always_return_data = True
- filtering = {'id': ('exact',), 'title': ('exact',)}
- object_class
alias of
Experiment
- ordering = ['id', 'title', 'created_time', 'update_time']
- queryset
- base_fields = {'approved': <tastypie.fields.BooleanField object>, 'created_by': <tastypie.fields.ForeignKey object>, 'created_time': <tastypie.fields.DateTimeField object>, 'description': <tastypie.fields.CharField object>, 'end_time': <tastypie.fields.DateTimeField object>, 'handle': <tastypie.fields.CharField object>, 'id': <tastypie.fields.IntegerField object>, 'institution_name': <tastypie.fields.CharField object>, 'locked': <tastypie.fields.BooleanField object>, 'parameter_sets': <tastypie.fields.ToManyField object>, 'public_access': <tastypie.fields.IntegerField object>, 'resource_uri': <tastypie.fields.CharField object>, 'start_time': <tastypie.fields.DateTimeField object>, 'title': <tastypie.fields.CharField object>, 'update_time': <tastypie.fields.DateTimeField object>, 'url': <tastypie.fields.CharField object>}
- declared_fields = {'created_by': <tastypie.fields.ForeignKey object>, 'parameter_sets': <tastypie.fields.ToManyField object>}
- dehydrate(bundle)
A hook to allow a final manipulation of data once all fields/methods have built out the dehydrated data.
Useful if you need to access more than one dehydrated field or want to annotate on additional data.
Must return the modified 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 tardis.tardis_portal.api.FacilityResource(api_name=None)
Bases:
MyTardisModelResource- class Meta
Bases:
Meta- always_return_data = True
- filtering = {'id': ('exact',), 'manager_group': 2, 'name': ('exact',)}
- ordering = ['id', 'name']
- queryset
- base_fields = {'created_time': <tastypie.fields.DateTimeField object>, 'id': <tastypie.fields.IntegerField object>, 'manager_group': <tastypie.fields.ForeignKey object>, 'modified_time': <tastypie.fields.DateTimeField object>, 'name': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>}
- declared_fields = {'manager_group': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.GroupResource(api_name=None)
Bases:
ModelResource- class Meta
Bases:
object- authentication = <tardis.tardis_portal.api.MyTardisAuthentication object>
- authorization
Authorisation class for Tastypie.
- filtering = {'id': ('exact',), 'name': ('exact',)}
- queryset
- base_fields = {'id': <tastypie.fields.IntegerField object>, 'name': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>}
- declared_fields = {}
- class tardis.tardis_portal.api.InstrumentResource(api_name=None)
Bases:
MyTardisModelResource- class Meta
Bases:
Meta- always_return_data = True
- filtering = {'facility': 2, 'id': ('exact',), 'name': ('exact',)}
- object_class
alias of
Instrument
- ordering = ['id', 'name']
- queryset
- base_fields = {'created_time': <tastypie.fields.DateTimeField object>, 'facility': <tastypie.fields.ForeignKey object>, 'id': <tastypie.fields.IntegerField object>, 'modified_time': <tastypie.fields.DateTimeField object>, 'name': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>}
- declared_fields = {'facility': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.LocationResource(api_name=None)
Bases:
MyTardisModelResource- base_fields = {'resource_uri': <tastypie.fields.CharField object>}
- declared_fields = {}
- class tardis.tardis_portal.api.MyTardisAuthentication
Bases:
objectcustom 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:
ModelResource- class Meta
Bases:
object- authentication = <tardis.tardis_portal.api.MyTardisAuthentication object>
- authorization
Authorisation class for Tastypie.
- object_class = None
- serializer = <tardis.tardis_portal.api.PrettyJSONSerializer object>
- base_fields = {'resource_uri': <tastypie.fields.CharField object>}
- declared_fields = {}
- class tardis.tardis_portal.api.ObjectACLResource(api_name=None)
Bases:
MyTardisModelResource- class Meta
Bases:
object- authentication = <tardis.tardis_portal.api.MyTardisAuthentication object>
- authorization
Authorisation class for Tastypie.
- filtering = {'entityId': ('exact',), 'pluginId': ('exact',)}
- ordering = ['id']
- queryset
- base_fields = {'aclOwnershipType': <tastypie.fields.IntegerField object>, 'canDelete': <tastypie.fields.BooleanField object>, 'canRead': <tastypie.fields.BooleanField object>, 'canWrite': <tastypie.fields.BooleanField object>, 'content_object': <tastypie.contrib.contenttypes.fields.GenericForeignKeyField object>, 'effectiveDate': <tastypie.fields.DateField object>, 'entityId': <tastypie.fields.CharField object>, 'expiryDate': <tastypie.fields.DateField object>, 'id': <tastypie.fields.IntegerField object>, 'isOwner': <tastypie.fields.BooleanField object>, 'object_id': <tastypie.fields.IntegerField object>, 'pluginId': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>}
- declared_fields = {'content_object': <tastypie.contrib.contenttypes.fields.GenericForeignKeyField object>}
- hydrate(bundle)
A hook to allow an initial manipulation of data before all methods/fields have built out the hydrated data.
Useful if you need to access more than one hydrated field or want to annotate on additional data.
Must return the modified bundle.
- class tardis.tardis_portal.api.ParameterNameResource(api_name=None)
Bases:
MyTardisModelResource- base_fields = {'choices': <tastypie.fields.CharField object>, 'comparison_type': <tastypie.fields.IntegerField object>, 'data_type': <tastypie.fields.IntegerField object>, 'full_name': <tastypie.fields.CharField object>, 'id': <tastypie.fields.IntegerField object>, 'immutable': <tastypie.fields.BooleanField object>, 'is_searchable': <tastypie.fields.BooleanField object>, 'name': <tastypie.fields.CharField object>, 'order': <tastypie.fields.IntegerField object>, 'resource_uri': <tastypie.fields.CharField object>, 'schema': <tastypie.fields.ForeignKey object>, 'units': <tastypie.fields.CharField object>}
- declared_fields = {'schema': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.ParameterResource(api_name=None)
Bases:
MyTardisModelResource- base_fields = {'name': <tastypie.fields.ForeignKey object>, 'resource_uri': <tastypie.fields.CharField object>, 'value': <tastypie.fields.CharField object>}
- declared_fields = {'name': <tastypie.fields.ForeignKey object>, 'value': <tastypie.fields.CharField object>}
- 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:
MyTardisModelResource- base_fields = {'resource_uri': <tastypie.fields.CharField object>, 'schema': <tastypie.fields.ForeignKey object>}
- declared_fields = {'schema': <tastypie.fields.ForeignKey object>}
- hydrate_schema(bundle)
- class tardis.tardis_portal.api.PrettyJSONSerializer(formats=None, content_types=None, datetime_formatting=None)
Bases:
Serializer- json_indent = 2
- to_json(data, options=None)
Given some Python data, produces JSON output.
- class tardis.tardis_portal.api.ReplicaResource(api_name=None)
Bases:
MyTardisModelResource- class Meta
Bases:
Meta- filtering = {'url': ('exact', 'startswith'), 'verified': ('exact',)}
- object_class
alias of
DataFileObject
- ordering = ['id']
- queryset
- base_fields = {'created_time': <tastypie.fields.DateTimeField object>, 'datafile': <tastypie.fields.ForeignKey object>, 'id': <tastypie.fields.IntegerField object>, 'last_verified_time': <tastypie.fields.DateTimeField object>, 'resource_uri': <tastypie.fields.CharField object>, 'uri': <tastypie.fields.CharField object>, 'verified': <tastypie.fields.BooleanField object>}
- declared_fields = {'datafile': <tastypie.fields.ForeignKey object>}
- dehydrate(bundle)
A hook to allow a final manipulation of data once all fields/methods have built out the dehydrated data.
Useful if you need to access more than one dehydrated field or want to annotate on additional data.
Must return the modified bundle.
- hydrate(bundle)
A hook to allow an initial manipulation of data before all methods/fields have built out the hydrated data.
Useful if you need to access more than one hydrated field or want to annotate on additional data.
Must return the modified bundle.
- class tardis.tardis_portal.api.SchemaResource(api_name=None)
Bases:
MyTardisModelResource- class Meta
Bases:
Meta- filtering = {'id': ('exact',), 'namespace': ('exact',)}
- ordering = ['id']
- queryset
- base_fields = {'hidden': <tastypie.fields.BooleanField object>, 'id': <tastypie.fields.IntegerField object>, 'immutable': <tastypie.fields.BooleanField object>, 'name': <tastypie.fields.CharField object>, 'namespace': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>, 'subtype': <tastypie.fields.CharField object>, 'type': <tastypie.fields.IntegerField object>}
- declared_fields = {}
- class tardis.tardis_portal.api.StorageBoxAttributeResource(api_name=None)
Bases:
MyTardisModelResource- base_fields = {'id': <tastypie.fields.IntegerField object>, 'key': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>, 'storage_box': <tastypie.fields.ForeignKey object>, 'value': <tastypie.fields.CharField object>}
- declared_fields = {'storage_box': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.StorageBoxOptionResource(api_name=None)
Bases:
MyTardisModelResource- accessible_keys = ['location']
- base_fields = {'id': <tastypie.fields.IntegerField object>, 'key': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>, 'storage_box': <tastypie.fields.ForeignKey object>, 'value': <tastypie.fields.CharField object>, 'value_type': <tastypie.fields.CharField object>}
- declared_fields = {'storage_box': <tastypie.fields.ForeignKey object>}
- class tardis.tardis_portal.api.StorageBoxResource(api_name=None)
Bases:
MyTardisModelResource- base_fields = {'attributes': <tastypie.fields.ToManyField object>, 'description': <tastypie.fields.CharField object>, 'django_storage_class': <tastypie.fields.CharField object>, 'id': <tastypie.fields.IntegerField object>, 'max_size': <tastypie.fields.IntegerField object>, 'name': <tastypie.fields.CharField object>, 'options': <tastypie.fields.ToManyField object>, 'resource_uri': <tastypie.fields.CharField object>, 'status': <tastypie.fields.CharField object>}
- declared_fields = {'attributes': <tastypie.fields.ToManyField object>, 'options': <tastypie.fields.ToManyField object>}
- class tardis.tardis_portal.api.UserResource(api_name=None)
Bases:
ModelResource- class Meta
Bases:
object- allowed_methods = ['get']
- authentication = <tardis.tardis_portal.api.MyTardisAuthentication object>
- authorization
Authorisation class for Tastypie.
- fields = ['username', 'first_name', 'last_name', 'email']
- filtering = {'email': ('iexact',), 'username': ('exact',)}
- queryset
- serializer = <tardis.tardis_portal.api.PrettyJSONSerializer object>
- base_fields = {'email': <tastypie.fields.CharField object>, 'first_name': <tastypie.fields.CharField object>, 'groups': <tastypie.fields.ManyToManyField object>, 'last_name': <tastypie.fields.CharField object>, 'resource_uri': <tastypie.fields.CharField object>, 'username': <tastypie.fields.CharField object>}
- declared_fields = {'groups': <tastypie.fields.ManyToManyField object>}
- 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
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.deprecations module
Deprecation warnings
- exception tardis.tardis_portal.deprecations.RemovedInMyTardis42Warning
Bases:
DeprecationWarningUsed 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 )
- exception tardis.tardis_portal.deprecations.RemovedInMyTardis43Warning
Bases:
PendingDeprecationWarningUsed to raise warnings about deprecated functionality.
Usage:
import warnings warnings.warn( "This method will be removed in MyTardis 4.3. " "Please use method2 instead.", RemovedInMyTardis43Warning )
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:
TarFileStream 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)
- 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.fields module
- class tardis.tardis_portal.fields.MultiValueCommaSeparatedField(fields, *, require_all_fields=True, **kwargs)
Bases:
MultiValueField- compress(data_list)
Return a single value for the given list of values. The values can be assumed to be valid.
For example, if this MultiValueField was instantiated with fields=(DateField(), TimeField()), this might return a datetime object created by combining the date and time in data_list.
tardis.tardis_portal.forms module
forms module
- class tardis.tardis_portal.forms.AddUserPermissionsForm(data=None, files=None, auto_id='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:
Form- base_fields = {'authMethod': <django.forms.fields.CharField object>, 'autocomp_user': <django.forms.fields.CharField object>, 'delete': <django.forms.fields.BooleanField object>, 'entered_user': <django.forms.fields.CharField object>, 'read': <django.forms.fields.BooleanField object>, 'write': <django.forms.fields.BooleanField object>}
- declared_fields = {'authMethod': <django.forms.fields.CharField object>, 'autocomp_user': <django.forms.fields.CharField object>, 'delete': <django.forms.fields.BooleanField object>, 'entered_user': <django.forms.fields.CharField object>, 'read': <django.forms.fields.BooleanField object>, 'write': <django.forms.fields.BooleanField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.CreateUserPermissionsForm(data=None, files=None, auto_id='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:
RegistrationForm- base_fields = {'authMethod': <django.forms.fields.CharField object>, 'email': <django.forms.fields.EmailField object>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>, 'username': <django.forms.fields.RegexField object>}
- declared_fields = {'authMethod': <django.forms.fields.CharField object>, 'email': <django.forms.fields.EmailField object>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>, 'username': <django.forms.fields.RegexField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.DatasetForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelForm- base_fields = {'description': <django.forms.fields.CharField object>, 'directory': <django.forms.fields.CharField object>, 'instrument': <django.forms.models.ModelChoiceField object>}
- declared_fields = {'description': <django.forms.fields.CharField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.ExperimentAuthor(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelForm- class Meta
Bases:
object- fields = ['author', 'institution', 'email', 'order', 'url']
- model
alias of
ExperimentAuthor
- base_fields = {'author': <django.forms.fields.CharField object>, 'email': <django.forms.fields.CharField object>, 'institution': <django.forms.fields.CharField object>, 'order': <django.forms.fields.IntegerField object>, 'url': <django.forms.fields.URLField object>}
- declared_fields = {}
- property media
Return all media required to render the widgets on this form.
- 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:
ModelFormThis 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(dict=None, /, **kwargs)
Bases:
UserDictThis 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}
- class Meta
Bases:
object- fields = ('title', 'institution_name', 'description')
- model
alias of
Experiment
- base_fields = {'description': <django.forms.fields.CharField object>, 'institution_name': <django.forms.fields.CharField object>, 'title': <django.forms.fields.CharField object>, 'url': <django.forms.fields.CharField object>}
- declared_fields = {'url': <django.forms.fields.CharField object>}
- 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:
- property media
Return all media required to render the widgets on this form.
- save(commit=True)
Save this form’s self.instance object if commit=True. Otherwise, add a save_m2m() method to the form which can be called after the instance is saved manually at a later time. Return the model instance.
- class tardis.tardis_portal.forms.ImportParamsForm(data=None, files=None, auto_id='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:
Form- base_fields = {'params': <django.forms.fields.FileField object>, 'password': <django.forms.fields.CharField object>, 'username': <django.forms.fields.CharField object>}
- declared_fields = {'params': <django.forms.fields.FileField object>, 'password': <django.forms.fields.CharField object>, 'username': <django.forms.fields.CharField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.LoginForm(*args, **kwargs)
Bases:
AuthenticationForm- base_fields = {'password': <django.forms.fields.CharField object>, 'username': <django.contrib.auth.forms.UsernameField object>}
- declared_fields = {'password': <django.forms.fields.CharField object>, 'username': <django.contrib.auth.forms.UsernameField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.ManageAccountForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelFormForm for changing account details.
- base_fields = {'email': <django.forms.fields.EmailField object>, 'first_name': <django.forms.fields.CharField object>, 'last_name': <django.forms.fields.CharField object>}
- declared_fields = {}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.ManageGroupPermissionsForm(data=None, files=None, auto_id='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:
Form- base_fields = {'adduser': <django.forms.fields.CharField object>, 'admin': <django.forms.fields.BooleanField object>, 'authMethod': <django.forms.fields.CharField object>}
- declared_fields = {'adduser': <django.forms.fields.CharField object>, 'admin': <django.forms.fields.BooleanField object>, 'authMethod': <django.forms.fields.CharField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.NoInput(attrs=None)
Bases:
Widget- property media
- render(name, value, attrs=None)
Render the widget as an HTML string.
- class tardis.tardis_portal.forms.RegisterExperimentForm(data=None, files=None, auto_id='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:
Form- base_fields = {'experiment_owner': <django.forms.fields.CharField object>, 'from_url': <django.forms.fields.CharField object>, 'originid': <django.forms.fields.CharField object>, 'password': <django.forms.fields.CharField object>, 'username': <django.forms.fields.CharField object>, 'xml_filename': <django.forms.fields.CharField object>, 'xmldata': <django.forms.fields.FileField object>}
- declared_fields = {'experiment_owner': <django.forms.fields.CharField object>, 'from_url': <django.forms.fields.CharField object>, 'originid': <django.forms.fields.CharField object>, 'password': <django.forms.fields.CharField object>, 'username': <django.forms.fields.CharField object>, 'xml_filename': <django.forms.fields.CharField object>, 'xmldata': <django.forms.fields.FileField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.RegistrationForm(data=None, files=None, auto_id='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:
FormForm 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>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>, 'username': <django.forms.fields.RegexField object>}
- 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>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>, 'username': <django.forms.fields.RegexField object>}
- property media
Return all media required to render the widgets on this form.
- save(profile_callback=None)
- class tardis.tardis_portal.forms.RightsForm(data=None, files=None, auto_id='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, renderer=None)
Bases:
ModelFormForm for changing public access and licence.
- class Meta
Bases:
object- fields = ('public_access', 'license', 'legal_text')
- model
alias of
Experiment
- widgets = {'license': <django.forms.widgets.HiddenInput object>}
- base_fields = {'legal_text': <django.forms.fields.CharField object>, 'license': <django.forms.models.ModelChoiceField object>, 'public_access': <django.forms.fields.TypedChoiceField object>}
- clean()
Hook for doing any extra form-wide cleaning after Field.clean() has been called on every field. Any ValidationError raised by this method will not be associated with a particular field; it will have a special-case association with the field named ‘__all__’.
- declared_fields = {'legal_text': <django.forms.fields.CharField object>}
- property media
Return all media required to render the widgets on this form.
- class tardis.tardis_portal.forms.StaticField(*, required=True, widget=None, label=None, initial=None, help_text='', error_messages=None, show_hidden_initial=False, validators=(), localize=False, disabled=False, label_suffix=None)
Bases:
Field- clean(value)
Validate the given value and return its “cleaned” value as an appropriate Python object. Raise ValidationError for any errors.
- 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.create_parameter_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_parameter_add_form(schema, parentObject, request)
- tardis.tardis_portal.forms.save_parameter_edit_form(parameterset, request)
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(*args, **kwargs)
- tardis.tardis_portal.iiif.download_info(*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(*args, **kwargs)
Bases:
OracleSafeManagerImplements 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.AuthServiceis 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
- 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(*args, **kwargs)
Bases:
ManagerImplements 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()
Return a new QuerySet object. Subclasses can override this method to 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.shortcuts module
- class tardis.tardis_portal.shortcuts.RestfulExperimentParameterSet(schema_func, form_cls)
Bases:
objectHelper 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.
- property schema
Use schema function to get the schema.
- property 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_to_file(template, filename, context)
Write the output of render_to_string to a file.
The
render_to_string()method returns a unicode string, which can be written to a file withlocale.getpreferredencoding(), usually UTF-8.
- 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.tasks module
tardis.tardis_portal.util module
- 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_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.split_path(p)
tardis.tardis_portal.widgets module
- class tardis.tardis_portal.widgets.CommaSeparatedInput(attrs=None)
Bases:
TextInput- property media
- render(name, value, attrs=None, renderer=None)
Render the widget as an HTML string.
- value_from_datadict(data, files, name)
Given a dictionary of data and this widget’s name, return the value of this widget or None if it’s not provided.
tardis.tardis_portal.xmlwriter module
- class tardis.tardis_portal.xmlwriter.XMLWriter
Bases:
object- 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
- tardis.tardis_portal.xmlwriter.logger = <Logger tardis.tardis_portal.xmlwriter (WARNING)>
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