@classmethod
def define_metadata(cls, obj):
    """Define properties supported and units."""
    obj.add_properties({'flow_mol': {'method': None, 'units': 'mol/s'},
        'flow_mol_phase_comp': {'method': None, 'units': 'mol/s'},
        'mole_frac': {'method': None, 'units': 'none'}, 'temperature': {
        'method': None, 'units': 'K'}, 'pressure': {'method': None, 'units':
        'Pa'}, 'flow_mol_phase': {'method': None, 'units': 'mol/s'},
        'dens_mol_phase': {'method': '_dens_mol_phase', 'units': 'mol/m^3'},
        'pressure_sat': {'method': '_pressure_sat', 'units': 'Pa'},
        'mole_frac_phase': {'method': '_mole_frac_phase', 'units':
        'no unit'}, 'energy_internal_mol_phase_comp': {'method':
        '_energy_internal_mol_phase_comp', 'units': 'J/mol'},
        'energy_internal_mol_phase': {'method':
        '_enenrgy_internal_mol_phase', 'units': 'J/mol'},
        'enth_mol_phase_comp': {'method': '_enth_mol_phase_comp', 'units':
        'J/mol'}, 'enth_mol_phase': {'method': '_enth_mol_phase', 'units':
        'J/mol'}, 'entr_mol_phase_comp': {'method': '_entr_mol_phase_comp',
        'units': 'J/mol'}, 'entr_mol_phase': {'method': '_entr_mol_phase',
        'units': 'J/mol'}, 'temperature_bubble': {'method':
        '_temperature_bubble', 'units': 'K'}, 'temperature_dew': {'method':
        '_temperature_dew', 'units': 'K'}, 'pressure_bubble': {'method':
        '_pressure_bubble', 'units': 'Pa'}, 'pressure_dew': {'method':
        '_pressure_dew', 'units': 'Pa'}, 'fug_vap': {'method': '_fug_vap',
        'units': 'Pa'}, 'fug_liq': {'method': '_fug_liq', 'units': 'Pa'},
        'dh_vap': {'method': '_dh_vap', 'units': 'J/mol'}, 'ds_vap': {
        'method': '_ds_vap', 'units': 'J/mol.K'}})
    obj.add_default_units({'time': 's', 'length': 'm', 'mass': 'g',
        'amount': 'mol', 'temperature': 'K', 'energy': 'J', 'holdup': 'mol'})
