glueby 0.1.0 → 0.2.0
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 +4 -4
- data/.ruby-gemset +1 -1
- data/.ruby-version +1 -1
- data/.travis.yml +3 -2
- data/README.md +27 -17
- data/glueby.gemspec +1 -1
- data/lib/generators/glueby/{initializer_generator.rb → contract/initializer_generator.rb} +0 -0
- data/lib/generators/glueby/contract/templates/initializer.rb.erb +3 -0
- data/lib/generators/glueby/contract/templates/key_table.rb.erb +15 -0
- data/lib/generators/glueby/{templates → contract/templates}/timestamp_table.rb.erb +2 -1
- data/lib/generators/glueby/contract/templates/utxo_table.rb.erb +15 -0
- data/lib/generators/glueby/contract/templates/wallet_table.rb.erb +10 -0
- data/lib/generators/glueby/contract/timestamp_generator.rb +26 -0
- data/lib/generators/glueby/contract/wallet_adapter_generator.rb +46 -0
- data/lib/glueby.rb +18 -1
- data/lib/glueby/contract.rb +3 -14
- data/lib/glueby/contract/active_record/timestamp.rb +8 -5
- data/lib/glueby/contract/errors.rb +6 -0
- data/lib/glueby/contract/payment.rb +54 -0
- data/lib/glueby/contract/timestamp.rb +39 -38
- data/lib/glueby/contract/token.rb +193 -0
- data/lib/glueby/contract/tx_builder.rb +197 -31
- data/lib/glueby/generator.rb +5 -0
- data/lib/glueby/generator/migrate_generator.rb +38 -0
- data/lib/glueby/internal.rb +6 -0
- data/lib/glueby/internal/rpc.rb +35 -0
- data/lib/glueby/internal/wallet.rb +122 -0
- data/lib/glueby/internal/wallet/abstract_wallet_adapter.rb +131 -0
- data/lib/glueby/internal/wallet/active_record.rb +15 -0
- data/lib/glueby/internal/wallet/active_record/key.rb +72 -0
- data/lib/glueby/internal/wallet/active_record/utxo.rb +50 -0
- data/lib/glueby/internal/wallet/active_record/wallet.rb +54 -0
- data/lib/glueby/internal/wallet/active_record_wallet_adapter.rb +133 -0
- data/lib/glueby/internal/wallet/errors.rb +11 -0
- data/lib/glueby/internal/wallet/tapyrus_core_wallet_adapter.rb +158 -0
- data/lib/glueby/version.rb +1 -1
- data/lib/glueby/wallet.rb +51 -0
- data/lib/tasks/glueby/contract/timestamp.rake +5 -5
- data/lib/tasks/glueby/contract/wallet_adapter.rake +42 -0
- metadata +30 -10
- data/lib/generators/glueby/templates/initializer.rb.erb +0 -4
- data/lib/generators/glueby/timestamp_generator.rb +0 -57
- data/lib/glueby/contract/rpc.rb +0 -15
@@ -1,57 +0,0 @@
|
|
1
|
-
module Glueby
|
2
|
-
module Contract
|
3
|
-
class TimestampGenerator < Rails::Generators::Base
|
4
|
-
include ::Rails::Generators::Migration
|
5
|
-
|
6
|
-
source_root File.expand_path('templates', __dir__)
|
7
|
-
|
8
|
-
def self.next_migration_number(dirname)
|
9
|
-
# ::ActiveRecord::Migration.next_migration_number(number)
|
10
|
-
# ::ActiveRecord::Generators::Base.next_migration_number(dirname)
|
11
|
-
next_migration_number = current_migration_number(dirname) + 1
|
12
|
-
::ActiveRecord::Migration.next_migration_number(next_migration_number)
|
13
|
-
end
|
14
|
-
|
15
|
-
def create_migration_file
|
16
|
-
migration_dir = File.expand_path("db/migrate")
|
17
|
-
|
18
|
-
if self.class.migration_exists?(migration_dir, "create_timestamp")
|
19
|
-
::Kernel.warn "Migration already exists: create_timestamp"
|
20
|
-
else
|
21
|
-
migration_template(
|
22
|
-
"timestamp_table.rb.erb",
|
23
|
-
"db/migrate/create_timestamp.rb",
|
24
|
-
migration_version: migration_version,
|
25
|
-
table_options: table_options,
|
26
|
-
)
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
MYSQL_ADAPTERS = [
|
31
|
-
"ActiveRecord::ConnectionAdapters::MysqlAdapter",
|
32
|
-
"ActiveRecord::ConnectionAdapters::Mysql2Adapter"
|
33
|
-
].freeze
|
34
|
-
|
35
|
-
private
|
36
|
-
|
37
|
-
def migration_version
|
38
|
-
major = ::Rails::VERSION::MAJOR
|
39
|
-
if major >= 5
|
40
|
-
"[#{major}.#{::Rails::VERSION::MINOR}]"
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
def mysql?
|
45
|
-
MYSQL_ADAPTERS.include?(::ActiveRecord::Base.connection.class.name)
|
46
|
-
end
|
47
|
-
|
48
|
-
def table_options
|
49
|
-
if mysql?
|
50
|
-
', { options: "ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci" }'
|
51
|
-
else
|
52
|
-
""
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|