public class Stereo_Completion_Reminder
extends java.lang.Object
Once the current date has been acquired from the system, the cycle is determined by querying the Cycle_map table within the database. The notifications need to be sent at the beginning of IO week 0, approximately three weeks before the cycle begins executing on the spacecraft, so the cycle is selected based on this criteria. If the currrent date is not within IO week 0 of a cycle listed in the database, then the application will exit without sending an email.
The list of suggestions is retrieved using a query similar to, but not exactly the same as the one used by HiTList.
The email addresses to send to are retrieved from the notify parameter in the input Configuration file.
Max Data Volume Percentage
Due to changes in the thermal constraints on the focal plane electronics,
images longer than ~80,0000 lines in bin 1 can no longer be taken. This change
resulted in incomplete stereo pairs where the first half was taken under
different thermal contraints, and were longer than the current 80,0000 line
limit. In order to notify STLs that they may need to take action in such
cases, the Max Data Volume Percentage was added to the report. This value
indicates as a percentage above or below the 80,000 line limit that the first
half has. Currently this value is stored in terms of bytes, the default value
of which is found in the DEFAULT_MAX_DATA_VOLUME_BYTES_THRESHOLD
static
variable. This value can be overridden by adding a MAX_DATA_VOLUME_BYTES_THRESHOLD
parameter with the appropriate value to the input configuration file.
Currently this task is tailored to the very specific purpose it is needed for, however, a few additional methods, would give this class more general reusability. At the moment, this utility is expected to be run from cron on the Sunday morning of IO Week0. Running this utility at other times may not give the expected results.
HiTList
Modifier and Type | Class and Description |
---|---|
static class |
Stereo_Completion_Reminder.ExitCode |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DEBUG_EMAIL_PROPERTY
System properties related to debugging.
|
static java.lang.String |
DEBUG_FILTER_PROPERTY
System properties related to debugging.
|
static java.lang.String |
DEBUG_MAIN_PROPERTY
System properties related to debugging.
|
static java.lang.String |
DEBUG_SECOND_STEREO_PROPERTY
System properties related to debugging.
|
static java.lang.String |
DEFAULT_CONFIGURATION_FILE |
static int |
DEFAULT_MAX_DATA_VOLUME_BYTES_THRESHOLD
This value determines the threshold for flagging stereo 2 suggestions that
have a potentially high data volume based on the size of the stereo 1.
|
static java.lang.String |
ID |
Constructor and Description |
---|
Stereo_Completion_Reminder(PIRL.Configuration.Configuration configuration)
Initialize the class given a Configuration.
|
Modifier and Type | Method and Description |
---|---|
java.util.Vector<java.util.Vector<java.lang.String>> |
Find_Out_Of_Bounds_LsubS(java.util.Vector<java.util.Vector<java.lang.String>> data_vector,
double min_lsubs,
double max_lsubs)
Run a vector of suggestions through a filter based on a minimum and maximum
solar longitude.
|
void |
forceCycle(int cycle)
Force a report using the input cycle id.
|
java.lang.String |
Get_Single_STL_Emails(java.lang.String theme)
Looks to the database for the email address(es) of the
science theme leader(s) for one particular theme.
|
static void |
main(java.lang.String[] arguments)
Get a list of second half stereo suggestions that are available in the
upcoming cycle and email them to a list of addresses found in a Configuration
file.
|
void |
NOOP(boolean noop)
Sets the noop option of the class.
|
void |
Send_Out_Of_Order_Warnings()
Looks for stereo pairs that were taken out of order and have
different L_s ranges, and sends a warning email to the appropriate
science theme leader(s) for any such pair.
|
void |
Send_Stereo_Notification(int which_half)
Sends a list of second half stereo suggestions in an html table format
to a list of email addresses found in the configuration.
|
java.util.Vector<java.util.Vector<java.lang.String>> |
Stereo_Search(int which_half,
Cycle cycle)
Retrieve the complete list of available second half stereo suggestions from
the database.
|
java.util.Vector<java.util.Vector<java.lang.String>> |
Wrong_Order_Search()
Retrieve the list of out-of-order stereo pairs with different T_s
ranges from the database.
|
public static final java.lang.String ID
public static final java.lang.String DEFAULT_CONFIGURATION_FILE
public static final int DEFAULT_MAX_DATA_VOLUME_BYTES_THRESHOLD
public static final java.lang.String DEBUG_MAIN_PROPERTY
public static final java.lang.String DEBUG_FILTER_PROPERTY
public static final java.lang.String DEBUG_EMAIL_PROPERTY
public static final java.lang.String DEBUG_SECOND_STEREO_PROPERTY
public Stereo_Completion_Reminder(PIRL.Configuration.Configuration configuration) throws PIRL.Database.Database_Exception, PIRL.Configuration.Configuration_Exception
configuration
- - The configuration to use for the classPIRL.Database.Database_Exception
- if a database connection error occursPIRL.Configuration.Configuration_Exception
- if there is a problem with the configuration parameterspublic java.util.Vector<java.util.Vector<java.lang.String>> Stereo_Search(int which_half, Cycle cycle) throws PIRL.Database.Database_Exception, PIRL.Configuration.Configuration_Exception
PIRL.Database.Database_Exception
- if a database error occurs.PIRL.Configuration.Configuration_Exception
public java.util.Vector<java.util.Vector<java.lang.String>> Wrong_Order_Search() throws PIRL.Database.Database_Exception
PIRL.Database.Database_Exception
- if a database error occurrs.public java.util.Vector<java.util.Vector<java.lang.String>> Find_Out_Of_Bounds_LsubS(java.util.Vector<java.util.Vector<java.lang.String>> data_vector, double min_lsubs, double max_lsubs)
data_vector
- A vector of suggestionsmin_lsubs
- the minimum lsubs valuemax_lsubs
- the maximum lsubs valuepublic void Send_Stereo_Notification(int which_half) throws PIRL.Database.Database_Exception, PIRL.Configuration.Configuration_Exception
PIRL.Database.Database_Exception
- if a database error occurs.PIRL.Configuration.Configuration_Exception
- if an error occurs while setting up the
stereo searchpublic void Send_Out_Of_Order_Warnings() throws PIRL.Database.Database_Exception
PIRL.Database.Database_Exception
- if a database error occurs.public java.lang.String Get_Single_STL_Emails(java.lang.String theme) throws PIRL.Database.Database_Exception
PIRL.Database.Database_Exception
- if a database error occurs.public void forceCycle(int cycle)
cycle
- - an integer cycle id. This id should exist in the database.public void NOOP(boolean noop)
public static void main(java.lang.String[] arguments)
Command line syntax is describe in the Usage(Options)
method.
Exit Status Values:
0 - Success 1 - Configuration Error 2 - Database Error 3 - Invalid Command Line Syntax
arguments
- Array of command line argument StringsUsage(Options)
Copyright \ (C) Arizona Board of Regents on behalf of the \ Planetary Image Research Laboratory, Lunar and \ Planetary Laboratory at the University of Arizona