Преглед изворни кода

fix(emqx_oracle): make username a required field in emqx_oracle_schema

Serge Tupchii пре 2 година
родитељ
комит
c3b3460173
2 измењених фајлова са 15 додато и 2 уклоњено
  1. 1 1
      apps/emqx_oracle/src/emqx_oracle.app.src
  2. 14 1
      apps/emqx_oracle/src/emqx_oracle_schema.erl

+ 1 - 1
apps/emqx_oracle/src/emqx_oracle.app.src

@@ -1,6 +1,6 @@
 {application, emqx_oracle, [
     {description, "EMQX Enterprise Oracle Database Connector"},
-    {vsn, "0.1.5"},
+    {vsn, "0.1.6"},
     {registered, []},
     {applications, [
         kernel,

+ 14 - 1
apps/emqx_oracle/src/emqx_oracle_schema.erl

@@ -21,7 +21,7 @@ roots() ->
 fields(config) ->
     Fields =
         [{server, server()}, {sid, fun sid/1}, {service_name, fun service_name/1}] ++
-            emqx_connector_schema_lib:relational_db_fields() ++
+            adjust_fields(emqx_connector_schema_lib:relational_db_fields()) ++
             emqx_connector_schema_lib:prepare_statement_fields(),
     proplists:delete(database, Fields).
 
@@ -38,3 +38,16 @@ service_name(type) -> binary();
 service_name(desc) -> ?DESC(?REF_MODULE, "service_name");
 service_name(required) -> false;
 service_name(_) -> undefined.
+
+adjust_fields(Fields) ->
+    lists:map(
+        fun
+            ({username, Sc}) ->
+                %% to please dialyzer...
+                Override = #{type => hocon_schema:field_schema(Sc, type), required => true},
+                {username, hocon_schema:override(Sc, Override)};
+            (Field) ->
+                Field
+        end,
+        Fields
+    ).