@@ -37,7 +37,7 @@ import za.co.absa.standardization.schema.StdSchemaUtils.FieldWithSource
3737import za .co .absa .standardization .time .DateTimePattern
3838import za .co .absa .standardization .typeClasses .{DoubleLike , LongLike }
3939import za .co .absa .standardization .types .TypedStructField ._
40- import za .co .absa .standardization .types .{Defaults , ParseOutput , TypedStructField }
40+ import za .co .absa .standardization .types .{TypeDefaults , ParseOutput , TypedStructField }
4141import za .co .absa .standardization .udf .{UDFBuilder , UDFLibrary , UDFNames }
4242
4343import scala .reflect .runtime .universe ._
@@ -135,7 +135,7 @@ object TypeParser {
135135 origSchema : StructType ,
136136 stdConfig : StandardizationConfig ,
137137 failOnInputNotPerSchema : Boolean = true )
138- (implicit udfLib : UDFLibrary , defaults : Defaults ): ParseOutput = {
138+ (implicit udfLib : UDFLibrary , defaults : TypeDefaults ): ParseOutput = {
139139 // udfLib implicit is present for error column UDF implementation
140140 val sourceName = SchemaUtils .appendPath(path, field.sourceName)
141141 val origField = origSchema.getField(sourceName)
@@ -162,7 +162,7 @@ object TypeParser {
162162 origType : DataType ,
163163 failOnInputNotPerSchema : Boolean ,
164164 isArrayElement : Boolean = false )
165- (implicit defaults : Defaults ): TypeParser [_] = {
165+ (implicit defaults : TypeDefaults ): TypeParser [_] = {
166166 val parserClass : (String , Column , DataType , Boolean , Boolean ) => TypeParser [_] = field.dataType match {
167167 case _ : ArrayType => ArrayParser (TypedStructField .asArrayTypeStructField(field), _, _, _, _, _)
168168 case _ : StructType => StructParser (TypedStructField .asStructTypeStructField(field), _, _, _, _, _)
@@ -191,7 +191,7 @@ object TypeParser {
191191 origType : DataType ,
192192 failOnInputNotPerSchema : Boolean ,
193193 isArrayElement : Boolean )
194- (implicit defaults : Defaults ) extends TypeParser [Any ] {
194+ (implicit defaults : TypeDefaults ) extends TypeParser [Any ] {
195195
196196 override def fieldType : ArrayType = {
197197 field.dataType
@@ -226,7 +226,7 @@ object TypeParser {
226226 origType : DataType ,
227227 failOnInputNotPerSchema : Boolean ,
228228 isArrayElement : Boolean )
229- (implicit defaults : Defaults ) extends TypeParser [Any ] {
229+ (implicit defaults : TypeDefaults ) extends TypeParser [Any ] {
230230 override def fieldType : StructType = {
231231 field.dataType
232232 }
@@ -260,7 +260,7 @@ object TypeParser {
260260 }
261261 }
262262
263- private abstract class PrimitiveParser [T ](implicit defaults : Defaults ) extends TypeParser [T ] {
263+ private abstract class PrimitiveParser [T ](implicit defaults : TypeDefaults ) extends TypeParser [T ] {
264264 override protected def standardizeAfterCheck (stdConfig : StandardizationConfig )(implicit logger : Logger ): ParseOutput = {
265265 val castedCol : Column = assemblePrimitiveCastLogic
266266 val castHasError : Column = assemblePrimitiveCastErrorLogic(castedCol)
@@ -298,12 +298,12 @@ object TypeParser {
298298 }
299299 }
300300
301- private abstract class ScalarParser [T ](implicit defaults : Defaults ) extends PrimitiveParser [T ] {
301+ private abstract class ScalarParser [T ](implicit defaults : TypeDefaults ) extends PrimitiveParser [T ] {
302302 override def assemblePrimitiveCastLogic : Column = column.cast(field.dataType)
303303 }
304304
305305 private abstract class NumericParser [N : TypeTag ](override val field : NumericTypeStructField [N ])
306- (implicit defaults : Defaults ) extends ScalarParser [N ] {
306+ (implicit defaults : TypeDefaults ) extends ScalarParser [N ] {
307307 override protected def standardizeAfterCheck (stdConfig : StandardizationConfig )(implicit logger : Logger ): ParseOutput = {
308308 if (field.needsUdfParsing) {
309309 standardizeUsingUdf(stdConfig)
@@ -355,7 +355,7 @@ object TypeParser {
355355 failOnInputNotPerSchema : Boolean ,
356356 isArrayElement : Boolean ,
357357 overflowableTypes : Set [DataType ])
358- (implicit defaults : Defaults ) extends NumericParser [N ](field) {
358+ (implicit defaults : TypeDefaults ) extends NumericParser [N ](field) {
359359 override protected def assemblePrimitiveCastErrorLogic (castedCol : Column ): Column = {
360360 val basicLogic : Column = super .assemblePrimitiveCastErrorLogic(castedCol)
361361
@@ -385,7 +385,7 @@ object TypeParser {
385385 origType : DataType ,
386386 failOnInputNotPerSchema : Boolean ,
387387 isArrayElement : Boolean )
388- (implicit defaults : Defaults )
388+ (implicit defaults : TypeDefaults )
389389 extends NumericParser [BigDecimal ](field)
390390 // NB! loss of precision is not addressed for any DecimalType
391391 // e.g. 3.141592 will be Standardized to Decimal(10,2) as 3.14
@@ -396,7 +396,7 @@ object TypeParser {
396396 origType : DataType ,
397397 failOnInputNotPerSchema : Boolean ,
398398 isArrayElement : Boolean )
399- (implicit defaults : Defaults )
399+ (implicit defaults : TypeDefaults )
400400 extends NumericParser [N ](field) {
401401 override protected def assemblePrimitiveCastErrorLogic (castedCol : Column ): Column = {
402402 // NB! loss of precision is not addressed for any fractional type
@@ -414,15 +414,15 @@ object TypeParser {
414414 origType : DataType ,
415415 failOnInputNotPerSchema : Boolean ,
416416 isArrayElement : Boolean )
417- (implicit defaults : Defaults ) extends ScalarParser [String ]
417+ (implicit defaults : TypeDefaults ) extends ScalarParser [String ]
418418
419419 private final case class BinaryParser (field : BinaryTypeStructField ,
420420 path : String ,
421421 column : Column ,
422422 origType : DataType ,
423423 failOnInputNotPerSchema : Boolean ,
424424 isArrayElement : Boolean )
425- (implicit defaults : Defaults ) extends PrimitiveParser [Array [Byte ]] {
425+ (implicit defaults : TypeDefaults ) extends PrimitiveParser [Array [Byte ]] {
426426 override protected def assemblePrimitiveCastLogic : Column = {
427427 origType match {
428428 case BinaryType => column
@@ -450,7 +450,7 @@ object TypeParser {
450450 origType : DataType ,
451451 failOnInputNotPerSchema : Boolean ,
452452 isArrayElement : Boolean )
453- (implicit defaults : Defaults ) extends ScalarParser [Boolean ]
453+ (implicit defaults : TypeDefaults ) extends ScalarParser [Boolean ]
454454
455455 /**
456456 * Timestamp conversion logic
@@ -474,7 +474,7 @@ object TypeParser {
474474 * Date | O | ->to_utc_timestamp->to_date
475475 * Other | ->String->to_date | ->String->to_timestamp->to_utc_timestamp->to_date
476476 */
477- private abstract class DateTimeParser [T ](implicit defaults : Defaults ) extends PrimitiveParser [T ] {
477+ private abstract class DateTimeParser [T ](implicit defaults : TypeDefaults ) extends PrimitiveParser [T ] {
478478 override val field : DateTimeTypeStructField [T ]
479479 protected val pattern : DateTimePattern = field.pattern.get.get
480480
@@ -551,11 +551,11 @@ object TypeParser {
551551 origType : DataType ,
552552 failOnInputNotPerSchema : Boolean ,
553553 isArrayElement : Boolean )
554- (implicit defaults : Defaults ) extends DateTimeParser [Date ] {
554+ (implicit defaults : TypeDefaults ) extends DateTimeParser [Date ] {
555555 private val defaultTimeZone : Option [String ] = field
556556 .defaultTimeZone
557557 .map(Option (_))
558- .getOrElse(defaults.getDefaultDateTimeZone )
558+ .getOrElse(defaults.defaultDateTimeZone )
559559
560560 private def applyPatternToStringColumn (column : Column , pattern : String ): Column = {
561561 defaultTimeZone.map(tz =>
@@ -605,12 +605,12 @@ object TypeParser {
605605 origType : DataType ,
606606 failOnInputNotPerSchema : Boolean ,
607607 isArrayElement : Boolean )
608- (implicit defaults : Defaults ) extends DateTimeParser [Timestamp ] {
608+ (implicit defaults : TypeDefaults ) extends DateTimeParser [Timestamp ] {
609609
610610 private val defaultTimeZone : Option [String ] = field
611611 .defaultTimeZone
612612 .map(Option (_))
613- .getOrElse(defaults.getDefaultTimestampTimeZone )
613+ .getOrElse(defaults.defaultTimestampTimeZone )
614614
615615 private def applyPatternToStringColumn (column : Column , pattern : String ): Column = {
616616 val interim : Column = to_timestamp(column, pattern)
0 commit comments