private void handleProperties(final Properties p){
	if(p != null){
	    if(p.containsKey(DB_DIR_KEY)){
		dbDir = p.getProperty(DB_DIR_KEY);
	    }
	    if(p.containsKey(OVERWRITE_KEY)){
		overWrite = Boolean.parseBoolean(p.getProperty(OVERWRITE_KEY));
	    }
	    if(p.containsKey(READ_ONLY_KEY)){
		readOnly = Boolean.parseBoolean(p.getProperty(READ_ONLY_KEY));
	    }
	    if(p.containsKey(TTL_MINUTES_KEY)){
		timeToLiveMinutes = Long.decode(p.getProperty(TTL_MINUTES_KEY));
	    }
	    if(p.containsKey(KEY_ENCODING_KEY)){
		keyEncoding = p.getProperty(KEY_ENCODING_KEY);
	    }
	    if(p.containsKey(BDB_LOG_FILE_SIZE_MB_KEY)){
		bdbLogFileSizeMb = Long.decode(p.getProperty(BDB_LOG_FILE_SIZE_MB_KEY));
	    }

	    if(p.containsKey(BDB_DEFERRED_WRITE_SIZE_KEY)){
		deferredWriteSize = Integer.decode(p.getProperty(BDB_DEFERRED_WRITE_SIZE_KEY));
	    }
	}
    }