libera_utils.io.filenaming.AttitudeKernelFilename#
- class libera_utils.io.filenaming.AttitudeKernelFilename(*args, **kwargs)#
Bases:
AbstractValidFilename
Class to construct, store, and manipulate an SPK filename
- Attributes:
archive_prefix
Property that contains the generated prefix for SPICE archiving
data_product_id
Property that contains the DataProductIdentifier for this file type
filename_parts
Property that contains a namespace of filename parts
path
Property containing the file path
processing_step_id
Property that contains the ProcessingStepIdentifier that generates this file
Methods
from_file_path
(*args, **kwargs)Factory method to produce an AbstractValidFilename from a valid Libera file path (str or Path)
from_filename_parts
(*, ck_object, version, ...)Create instance from filename parts.
generate_prefixed_path
(parent_path)Generates an absolute path of the form {parent_path}/{prefix_structure}/{file_basename} The parent_path can be an S3 bucket or an absolute local filepath (must start with /)
regex_match
(path)Parse and validate a given path against class-attribute defined regex
- __init__(*args, **kwargs)#
Methods
from_file_path
(*args, **kwargs)Factory method to produce an AbstractValidFilename from a valid Libera file path (str or Path)
from_filename_parts
(*, ck_object, version, ...)Create instance from filename parts.
generate_prefixed_path
(parent_path)Generates an absolute path of the form {parent_path}/{prefix_structure}/{file_basename} The parent_path can be an S3 bucket or an absolute local filepath (must start with /)
regex_match
(path)Parse and validate a given path against class-attribute defined regex
Attributes
Property that contains the generated prefix for SPICE archiving
Property that contains the DataProductIdentifier for this file type
Property that contains a namespace of filename parts
Property containing the file path
Property that contains the ProcessingStepIdentifier that generates this file
- static _calculate_applicable_time(start: datetime, end: datetime) date #
Based on the start time and end time of a file, returns the applicable time (date)
- Parameters:
start (datetime.datetime) – Start of the applicable time range
end (datetime.datetime) – End of the applicable time range
- Returns:
The date of the mean time between start and end
- Return type:
- classmethod _format_filename_parts(*, ck_object: str, version: str, utc_start: datetime, utc_end: datetime, revision: datetime)#
Format filename parts as a string
- Parameters:
ck_object (str) – Name of object whose attitude is represented in this CK.
utc_start (datetime.datetime) – Start time of data.
utc_end (datetime.datetime) – End time of data.
version (str) – Software version that the file was created with. Corresponds to the algorithm version as determined by the algorithm software.
revision (datetime.datetime) – When the file was last revised.
- Return type:
- classmethod _from_filename_parts(*, basepath: str | Path | S3Path = None, **parts: Any)#
Create instance from filename parts.
The part kwarg names are named according to the regex for the file type.
- Parameters:
basepath (Union[str, Path, S3Path], Optional) – Allows prepending a basepath or prefix.
parts (Any) – Passed directly to _format_filename_parts. This is a dict of variable kwargs that will differ in each filename class based on the required parts for that particular filename type.
- Return type:
- _parse_filename_parts()#
Parse the filename parts into objects from regex matched strings
- Returns:
namespace object containing filename parts as parsed objects
- Return type:
- property data_product_id: DataProductIdentifier#
Property that contains the DataProductIdentifier for this file type
- property filename_parts#
Property that contains a namespace of filename parts
- classmethod from_file_path(*args, **kwargs) AVF #
Factory method to produce an AbstractValidFilename from a valid Libera file path (str or Path)
- classmethod from_filename_parts(*, ck_object: str, version: str, utc_start: datetime, utc_end: datetime, revision: datetime, basepath: str | Path | S3Path | None = None)#
Create instance from filename parts.
This method exists primarily to expose typehinting to the user for use with the generic _from_filename_parts. The part arg names are named according to the regex for the file type.
- Parameters:
ck_object (str) – Name of object whose attitude is represented in this CK.
version (str) – Software version that the file was created with. Corresponds to the algorithm version as determined by the algorithm software.
utc_start (datetime.datetime) – Start time of data.
utc_end (datetime.datetime) – End time of data.
revision (datetime.datetime) – When the file was last revised.
basepath (Optional[Union[str, Path, S3Path]]) – Allows prepending a basepath or prefix.
- Return type:
- generate_prefixed_path(parent_path: str | Path | S3Path) Path | S3Path #
Generates an absolute path of the form {parent_path}/{prefix_structure}/{file_basename} The parent_path can be an S3 bucket or an absolute local filepath (must start with /)
- Parameters:
parent_path (Union[str, Path, S3Path]) – Absolute path to the parent directory or S3 bucket prefix. The generated path prefix is appended to the parent path and followed by the file basename.
- Return type:
- property processing_step_id: ProcessingStepIdentifier#
Property that contains the ProcessingStepIdentifier that generates this file