

# Clase DynamicRecord Scala de AWS Glue
<a name="glue-etl-scala-apis-glue-dynamicrecord-class"></a>

**Topics**
+ [Def addField](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-addField)
+ [Def dropField](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-dropField)
+ [Def setError](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-setError)
+ [Def isError](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-isError)
+ [Def getError](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-getError)
+ [Def clearError](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-clearError)
+ [Def write](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-write)
+ [Def readFields](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-readFields)
+ [Def clone](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-clone)
+ [Def schema](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-schema)
+ [Def getRoot](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-getRoot)
+ [Def toJson](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-toJson)
+ [Def getFieldNode](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-getFieldNode)
+ [Def getField](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-getField)
+ [Def hashCode](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-hashCode)
+ [Def equals](#glue-etl-scala-apis-glue-dynamicrecord-class-defs-equals)
+ [Objeto DynamicRecord](#glue-etl-scala-apis-glue-dynamicrecord-object)
+ [Característica RecordTraverser](#glue-etl-scala-apis-glue-recordtraverser-trait)

**Paquete: com.amazonaws.services.glue**

```
class DynamicRecord extends Serializable with Writable with Cloneable
```

Un objeto `DynamicRecord` es una estructura de datos autodescriptiva que representa una fila de datos en el conjunto de datos que se está procesando. Es autodescriptiva en el sentido de que se puede obtener el esquema de la fila representado mediante el objeto `DynamicRecord` si se inspecciona el registro. Un objeto `DynamicRecord` es similar a `Row` en Apache Spark.

## Def addField
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-addField"></a>

```
def addField( path : String,
              dynamicNode : DynamicNode
            ) : Unit
```

Agrega un objeto [DynamicNode](glue-etl-scala-apis-glue-types-dynamicnode.md) a la ruta especificada.
+ `path`: ruta del campo que se va a agregar.
+ `dynamicNode`: [DynamicNode](glue-etl-scala-apis-glue-types-dynamicnode.md) que se agregará a la ruta especificada.

## Def dropField
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-dropField"></a>

```
 def dropField(path: String, underRename: Boolean = false): Option[DynamicNode]
```

Descarta un objeto [DynamicNode](glue-etl-scala-apis-glue-types-dynamicnode.md) de la ruta especifica y devuelve el nodo descartado si no hay una matriz en la ruta especificada.
+ `path`: ruta al campo que se descartará.
+ `underRename`: true si se llama a `dropField` como parte de una transformación de cambio de nombre; de lo contrario, false (false de forma predeterminada).

Devuelve `scala.Option Option` ([DynamicNode](glue-etl-scala-apis-glue-types-dynamicnode.md)).

## Def setError
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-setError"></a>

```
def setError( error : Error )
```

Establece este registro como un registro de error, tal y como se especifica mediante el parámetro `error`.

Devuelve `DynamicRecord`.

## Def isError
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-isError"></a>

```
def isError
```

Comprueba si es un registro de error.

## Def getError
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-getError"></a>

```
def getError
```

Obtiene el `Error` si es un registro de error. Devuelve `scala.Some Some` (Error) si es un registro de error; de lo contrario, `scala.None`.

## Def clearError
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-clearError"></a>

```
def clearError
```

Configure el `Error` en `scala.None.None`.

## Def write
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-write"></a>

```
override def write( out : DataOutput ) : Unit 
```



## Def readFields
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-readFields"></a>

```
override def readFields( in : DataInput ) : Unit 
```



## Def clone
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-clone"></a>

```
override def clone : DynamicRecord 
```

Clona este registro en un nuevo objeto `DynamicRecord` y lo devuelve.

## Def schema
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-schema"></a>

```
def schema
```

Obtiene el objeto `Schema` mediante la inspección del registro.

## Def getRoot
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-getRoot"></a>

```
def getRoot : ObjectNode 
```

Obtiene el objeto `ObjectNode` raíz del registro.

## Def toJson
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-toJson"></a>

```
def toJson : String 
```

Obtiene la cadena JSON del registro.

## Def getFieldNode
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-getFieldNode"></a>

```
def getFieldNode( path : String ) : Option[DynamicNode] 
```

Obtiene el valor del campo en la `path` especificada como una opción de `DynamicNode`.

Devuelve `scala.Some Some` ([DynamicNode](glue-etl-scala-apis-glue-types-dynamicnode.md)) si el campo existe; de lo contrario, `scala.None.None`.

## Def getField
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-getField"></a>

```
def getField( path : String ) : Option[Any] 
```

Obtiene el valor del campo en la `path` especificada como una opción de `DynamicNode`.

Devuelve `scala.Some Some` (valor).

## Def hashCode
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-hashCode"></a>

```
override def hashCode : Int 
```



## Def equals
<a name="glue-etl-scala-apis-glue-dynamicrecord-class-defs-equals"></a>

```
override def equals( other : Any )
```



## Objeto DynamicRecord
<a name="glue-etl-scala-apis-glue-dynamicrecord-object"></a>

```
object DynamicRecord
```

### Def apply
<a name="glue-etl-scala-apis-glue-dynamicrecord-object-defs-apply"></a>

```
def apply( row : Row,
           schema : SparkStructType )
```

Aplique el método para convertir un objeto `Row` de Apache Spark SQL en un objeto [DynamicRecord](#glue-etl-scala-apis-glue-dynamicrecord-class).
+ `row` — un objeto de Spark SQL `Row`.
+ `schema`: el objeto `Schema` de la fila.

Devuelve `DynamicRecord`.

## Característica RecordTraverser
<a name="glue-etl-scala-apis-glue-recordtraverser-trait"></a>

```
trait RecordTraverser {
  def nullValue(): Unit
  def byteValue(value: Byte): Unit
  def binaryValue(value: Array[Byte]): Unit
  def booleanValue(value: Boolean): Unit
  def shortValue(value: Short) : Unit
  def intValue(value: Int) : Unit
  def longValue(value: Long) : Unit
  def floatValue(value: Float): Unit
  def doubleValue(value: Double): Unit
  def decimalValue(value: BigDecimal): Unit
  def stringValue(value: String): Unit
  def dateValue(value: Date): Unit
  def timestampValue(value: Timestamp): Unit
  def objectStart(length: Int): Unit
  def objectKey(key: String): Unit
  def objectEnd(): Unit
  def mapStart(length: Int): Unit
  def mapKey(key: String): Unit
  def mapEnd(): Unit
  def arrayStart(length: Int): Unit
  def arrayEnd(): Unit
}
```