actn-jobs 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c7ba55d931371dfd374240867d31863e02eed69b
4
- data.tar.gz: f097835f57ea3c94583d06b365fa3aff6458f6c4
3
+ metadata.gz: 9c379b9506d832943725349139016ce85a0237c3
4
+ data.tar.gz: b9f7924284498d8df56e61787fca1b57f79e6e08
5
5
  SHA512:
6
- metadata.gz: 195441affe500cd214406941ae557fc3fe50c0a9d7ad24bb82cc66847c6aa70d4c15bfd1440190892aa92073ee7a72d461e6b248000f9a1164549b37f2ac42a1
7
- data.tar.gz: 432f6f36416b2a969bbf2d4d33076a0d7ee057ee0fe1071d83b0c578fd1ab9e93afc0f33d64642cf8ecb2fa1b859ea862f3c4e5f681a2636b59b480a1b35a55a
6
+ metadata.gz: 4d662945aceae123085f1d38a9d811d7b354e77740d22270cf237697cc31dcc901562b300b9c53a9933844d77b6c56de2d4e87e35052831f7800a516eb2345da
7
+ data.tar.gz: 27ff8ca7f2827c55f8b38f6f2bd57fd7321ae16ca1d052cef2028c9c87c9fc6c7da8cc9396acfb3325812785fa251f4a62f0752a0a1cb475d4c37608c1183c94
data/db/1_jobs.sql CHANGED
@@ -6,32 +6,10 @@ SELECT __create_table('core','jobs');
6
6
 
7
7
  CREATE or REPLACE FUNCTION hook_trigger() RETURNS trigger AS
8
8
  $$
9
- upsert_func = plv8.find_function("__upsert")
10
- model = JSON.parse(plv8.find_function("__find_model")(TG_TABLE_NAME.classify()))
9
+ actn.funcs.hook_trigger(TG_TABLE_NAME, TG_OP, NEW, OLD);
11
10
 
12
- callback = {
13
- INSERT: "after_create"
14
- UPDATE: "after_update"
15
- DELETE: "after_destroy"
16
- }[TG_OP]
17
11
 
18
- # plv8.elog(NOTICE,"HOOK TRIGGER",JSON.stringify(model))
19
-
20
- for hook in model?.hooks?[callback] or []
21
- hook.run_at ?= new Date()
22
- hook.callback = callback
23
-
24
- job =
25
- hook: hook
26
- table_name: TG_TABLE_NAME
27
- record_uuid: NEW?.data?.uuid or OLD?.data?.uuid
28
- record: OLD.data if TG_OP is "DELETE"
29
-
30
- res = upsert_func "core", "jobs", JSON.stringify(job)
31
- plv8.execute "SELECT pg_notify('jobs', $1);", [res]
32
-
33
-
34
- $$ LANGUAGE plcoffee STABLE STRICT;
12
+ $$ LANGUAGE plv8 STABLE STRICT;
35
13
 
36
14
 
37
15
 
@@ -40,27 +18,11 @@ $$ LANGUAGE plcoffee STABLE STRICT;
40
18
 
41
19
  CREATE or REPLACE FUNCTION jobs_model_callbacks() RETURNS trigger AS
42
20
  $$
43
- table_name = (NEW?.data?.name or OLD?.data?.name).tableize()
44
-
45
- table_schema = (NEW?.data?.table_schema or OLD?.data?.table_schema) or "public"
46
-
47
- return if table_schema is "core"
48
-
49
- if TG_OP is "DELETE"
50
- plv8.execute "DELETE FROM core.jobs WHERE __string(data, 'table_name'::text) = $1;", [table_name]
51
-
52
- # if TG_OP is "DELETE" and OLD.data.hooks? or TG_OP is "UPDATE" and NEW.data.hooks?
53
- # plv8.execute "DROP TRIGGER IF EXISTS #{table_schema}_#{table_name}_hook_trigger ON #{table_schema}.#{table_name}"
54
-
55
-
56
- if TG_OP is "INSERT" or TG_OP is "UPDATE" and NEW.data.hooks? and not OLD.data.hooks?
57
- plv8.execute """CREATE TRIGGER #{table_schema}_#{table_name}_hook_trigger
58
- AFTER INSERT OR UPDATE OR DELETE ON #{table_schema}.#{table_name}
59
- FOR EACH ROW EXECUTE PROCEDURE hook_trigger();"""
21
+ actn.funcs.jobs_model_callbacks(TG_TABLE_NAME, TG_OP, NEW, OLD)
60
22
 
61
23
 
62
24
 
63
- $$ LANGUAGE plcoffee STABLE STRICT;
25
+ $$ LANGUAGE plv8 STABLE STRICT;
64
26
 
65
27
  CREATE TRIGGER jobs_core_models_callback_trigger
66
28
  AFTER INSERT OR UPDATE OR DELETE ON core.models
@@ -1,5 +1,5 @@
1
1
  module Actn
2
2
  module Jobs
3
- VERSION = "0.0.1"
3
+ VERSION = "0.0.2"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actn-jobs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Onur Uyar