updateSld method

Future<void> updateSld(
  1. TableName tableName,
  2. String sldString
)

Update the sld string in the geopackage

Implementation

Future<void> updateSld(TableName tableName, String sldString) async {
  if (_canHanldeStyle != null && _canHanldeStyle == false) {
    return;
  }
  if (await checkStyleTable()) {
    String name = tableName.name.toLowerCase();
    String sql = """update $HM_STYLES_TABLE
      set sld=? where lower(tablename)='$name'
      """;
    var updated = await _postgresDb.execute(sql, arguments: [sldString]);
    if (updated == 0) {
      // need to insert
      String sql = """insert into $HM_STYLES_TABLE
    (tablename, sld) values
      ('$name', ?);
      """;
      await _postgresDb.execute(sql, arguments: [sldString]);
    }
  }
}