/** * Casts from a cassandra_ColumnOrSuperColumn->column or cassandra_Column types, to PandraColumn * @param cassandra_Column $object source objct * @param PandraColumnContainer $parent parent container * @return PandraColumn new column object or NULL on empty cassandra_ColumnOrSuperColumn->column */ public static function cast($object, PandraColumnContainer $parent = NULL) { if ($object instanceof cassandra_ColumnOrSuperColumn) { if (!empty($object->column->name)) { $object = $object->column; } else { return NULL; } } elseif (!$object instanceof cassandra_Column) { throw new RuntimeException('Cast expected cassandra_Column[OrSuperColumn], recieved ' . get_class($object)); } $newObj = new PandraColumn($object->name); if ($parent !== NULL) { $newObj->setParent($parent); } $newObj->setValue($object->value); $newObj->bindTime($object->timestamp); return $newObj; }