rather than putting the log messages in the constructor of ParquetProperties I would put the log messages here.
maybe Log.info("Parquet properties: " + parquetProps)
Otherwise every call to the constructor will log those irrespective of the context. Those logs are to inform the user of how the write support bellow gets initialized.