<s> from . mixins import FionaLoaderParser , GisMapper , ShapeMapper , WktMapper <EOL> from wq . io . base import BaseIO <EOL> class MetaSyncIO ( BaseIO ) : <EOL> """<STR_LIT>""" <EOL> def sync ( self , other , save = True ) : <EOL> driver = other . meta . get ( '<STR_LIT>' , None ) <EOL> other . meta = self . meta . copy ( ) <EOL> if driver : <EOL> other . meta [ '<STR_LIT>' ] = driver <EOL> super ( MetaSyncIO , self ) . sync ( other , save ) <EOL> def get_field_names ( self ) : <EOL> if self . field_names is None and self . meta is not None : <EOL> return ( <EOL> [ '<STR_LIT:id>' , '<STR_LIT>' ] <EOL> + list ( self . meta [ '<STR_LIT>' ] [ '<STR_LIT>' ] . keys ( ) ) <EOL> ) <EOL> return super ( MetaSyncIO , self ) . get_field_names ( ) <EOL> class GisIO ( FionaLoaderParser , GisMapper , MetaSyncIO ) : <EOL> pass <EOL> class ShapeIO ( FionaLoaderParser , ShapeMapper , MetaSyncIO ) : <EOL> pass <EOL> class WktIO ( FionaLoaderParser , WktMapper , MetaSyncIO ) : <EOL> pass </s>
