physis.core
Class Configuration

java.lang.Object
  |
  +--physis.core.Configuration

public class Configuration
extends java.lang.Object

This class contains the required parameters for the running system. There are two types of parameters:

  1. Basic parameter  - It's often used and important for the basic functionality of the system. It can be accessed quickly through a simple method - named according to the parametername - in its type. It can be accessed as property String as well.
  2. Additional parameter - It can be accessed only as property String.

CRC
1. Retrieving and storing the configuration data.
2. Ensure easy acces to the system configuration parameters.
3. Changing parameters during the run.


Field Summary
private static int average_time_slice
          Average number of performed VM cycles per update.
static java.lang.String AVERAGE_TIME_SLICE
           
static java.lang.String GENE_BANK_ENABLED
           
static java.lang.String GENE_BANK_MAXSIZE
           
private static int genebank_max_size
           
private static boolean geneBankEnabled
           
private static double max_allocation_ratio
          When a digital organism tries to allocate space for its child it's only allowed to do it if the size of the allocated area is smaller than original_size * max_allocation_ratio.
static java.lang.String MAX_ALLOCATION_RATIO
           
private static int max_number_of_tasks
          If it's less than the actual loaded tasks then it may be reset by TaskLibrary.
static java.lang.String MAX_NUMBER_OF_TASKS
           
static java.lang.String MAX_NUMBER_OF_UPDATES
           
private static int max_task_size
          It comes from when building the tasklibrary.
private static long maximum_number_of_updates
          The maximum number of updates that the system is allowed to perform.
private static double min_allocation_ratio
          When a digital organism tries to allocate space for its child it's only allowed to do it if the size of the allocated area is bigger than original_size * min_allocation_ratio.
static java.lang.String MIN_ALLOCATION_RATIO
           
private static double min_proliferation_ratio
           
static java.lang.String MIN_PROLIFERATION_RATIO
           
static java.lang.String NURSE_CLASS_NAME
           
private static java.lang.String physis_home
           
static java.lang.String PHYSIS_HOME
           
(package private) static java.util.Properties props
           
private static java.lang.String vm_class_name
           
static java.lang.String VM_CLASS_NAME
           
 
Constructor Summary
Configuration()
           
 
Method Summary
static boolean doesExistProperty(java.lang.String paramname)
          Examines whether the given parameter exists or not.
static int getAverageTimeSlice()
           
static int getGeneBankMaxSize()
           
static double getMaxAllocationRatio()
           
static int getMaxNumberOfTasks()
           
static long getMaxNumberOfUpdates()
           
static int getMaxTaskSize()
           
static double getMinAllocationRatio()
           
static double getMinProliferationRatio()
           
static java.lang.String getNurseClassName()
           
static java.lang.String getPhysisHome()
           
static java.lang.String getProperty(java.lang.String paramname)
          Provides acces for non-frequently used parameters.
static java.lang.String getVMClassName()
           
static void init(java.lang.String config_file)
           
static boolean isGeneBankEnabled()
           
static void setAverageTimeSlice(int avg_times_lice)
           
static void setGeneBankEnabled(boolean enabled)
           
static void setGeneBankMaxSize(int size)
           
static void setMaxAllocationRatio(double max_alloc_ratio)
           
static void setMaxNumberOfTasks(int max_num_of_tasks)
           
static void setMaxNumberOfUpdates(long max_updates)
           
static void setMaxTaskSize(int max_task)
           
static void setMinAllocationRatio(double min_alloc_ratio)
           
static void setMinProliferationRatio(double min_proli_ratio)
           
static void setPhysisHome(java.lang.String home)
           
private static void setVMClassName(java.lang.String vm_name)
           
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

MAX_NUMBER_OF_UPDATES

public static java.lang.String MAX_NUMBER_OF_UPDATES

AVERAGE_TIME_SLICE

public static java.lang.String AVERAGE_TIME_SLICE

MIN_ALLOCATION_RATIO

public static java.lang.String MIN_ALLOCATION_RATIO

MAX_ALLOCATION_RATIO

public static java.lang.String MAX_ALLOCATION_RATIO

MIN_PROLIFERATION_RATIO

public static java.lang.String MIN_PROLIFERATION_RATIO

VM_CLASS_NAME

public static java.lang.String VM_CLASS_NAME

NURSE_CLASS_NAME

public static java.lang.String NURSE_CLASS_NAME

GENE_BANK_ENABLED

public static java.lang.String GENE_BANK_ENABLED

GENE_BANK_MAXSIZE

public static java.lang.String GENE_BANK_MAXSIZE

MAX_NUMBER_OF_TASKS

public static java.lang.String MAX_NUMBER_OF_TASKS

PHYSIS_HOME

public static java.lang.String PHYSIS_HOME

props

static java.util.Properties props

maximum_number_of_updates

private static long maximum_number_of_updates
The maximum number of updates that the system is allowed to perform.

average_time_slice

private static int average_time_slice
Average number of performed VM cycles per update.

min_allocation_ratio

private static double min_allocation_ratio
When a digital organism tries to allocate space for its child it's only allowed to do it if the size of the allocated area is bigger than original_size * min_allocation_ratio.

max_allocation_ratio

private static double max_allocation_ratio
When a digital organism tries to allocate space for its child it's only allowed to do it if the size of the allocated area is smaller than original_size * max_allocation_ratio.

min_proliferation_ratio

private static double min_proliferation_ratio

max_task_size

private static int max_task_size
It comes from when building the tasklibrary.

max_number_of_tasks

private static int max_number_of_tasks
If it's less than the actual loaded tasks then it may be reset by TaskLibrary.

vm_class_name

private static java.lang.String vm_class_name

geneBankEnabled

private static boolean geneBankEnabled

genebank_max_size

private static int genebank_max_size

physis_home

private static java.lang.String physis_home
Constructor Detail

Configuration

public Configuration()
Method Detail

init

public static void init(java.lang.String config_file)

getProperty

public static java.lang.String getProperty(java.lang.String paramname)
Provides acces for non-frequently used parameters.

doesExistProperty

public static boolean doesExistProperty(java.lang.String paramname)
Examines whether the given parameter exists or not.

setMaxNumberOfUpdates

public static void setMaxNumberOfUpdates(long max_updates)

getMaxNumberOfUpdates

public static long getMaxNumberOfUpdates()

setAverageTimeSlice

public static void setAverageTimeSlice(int avg_times_lice)

getAverageTimeSlice

public static int getAverageTimeSlice()

setMinAllocationRatio

public static void setMinAllocationRatio(double min_alloc_ratio)

getMinAllocationRatio

public static double getMinAllocationRatio()

setMaxAllocationRatio

public static void setMaxAllocationRatio(double max_alloc_ratio)

getMaxAllocationRatio

public static double getMaxAllocationRatio()

setMinProliferationRatio

public static void setMinProliferationRatio(double min_proli_ratio)

getMinProliferationRatio

public static double getMinProliferationRatio()

getMaxTaskSize

public static int getMaxTaskSize()

setMaxTaskSize

public static void setMaxTaskSize(int max_task)

getMaxNumberOfTasks

public static int getMaxNumberOfTasks()

setMaxNumberOfTasks

public static void setMaxNumberOfTasks(int max_num_of_tasks)

setVMClassName

private static void setVMClassName(java.lang.String vm_name)

getVMClassName

public static java.lang.String getVMClassName()

getNurseClassName

public static java.lang.String getNurseClassName()

setGeneBankEnabled

public static void setGeneBankEnabled(boolean enabled)

isGeneBankEnabled

public static boolean isGeneBankEnabled()

setGeneBankMaxSize

public static void setGeneBankMaxSize(int size)

getGeneBankMaxSize

public static int getGeneBankMaxSize()

setPhysisHome

public static void setPhysisHome(java.lang.String home)

getPhysisHome

public static java.lang.String getPhysisHome()