liberic 0.1.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 +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +4 -0
- data/CODE_OF_CONDUCT.md +13 -0
- data/Gemfile +4 -0
- data/LICENSE +8 -0
- data/README.md +181 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/examples/steuersatz.xml +89 -0
- data/examples/submit_ekst.rb +13 -0
- data/lib/liberic.rb +18 -0
- data/lib/liberic/boot.rb +37 -0
- data/lib/liberic/config.rb +157 -0
- data/lib/liberic/helpers.rb +1 -0
- data/lib/liberic/helpers/invocation.rb +27 -0
- data/lib/liberic/process.rb +105 -0
- data/lib/liberic/response.rb +2 -0
- data/lib/liberic/response/errors.rb +9 -0
- data/lib/liberic/response/version.rb +38 -0
- data/lib/liberic/sdk.rb +5 -0
- data/lib/liberic/sdk/api.rb +205 -0
- data/lib/liberic/sdk/configuration.rb +8 -0
- data/lib/liberic/sdk/def.rb +6 -0
- data/lib/liberic/sdk/fehlercodes.rb +192 -0
- data/lib/liberic/sdk/types.rb +56 -0
- data/lib/liberic/version.rb +3 -0
- data/liberic.gemspec +36 -0
- metadata +144 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
module Liberic
|
|
2
|
+
module SDK
|
|
3
|
+
module Types
|
|
4
|
+
extend FFI::Library
|
|
5
|
+
|
|
6
|
+
class DruckParameter < FFI::Struct
|
|
7
|
+
layout :version, :uint, # Set version to 2
|
|
8
|
+
:vorschau, :uint,
|
|
9
|
+
:ersteSeite, :uint,
|
|
10
|
+
:duplexDruck, :uint,
|
|
11
|
+
:pdfName, :pointer,
|
|
12
|
+
:fussText, :pointer,
|
|
13
|
+
:ersteSeite, :uint
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
class VerschluesselungsParameter < FFI::Struct
|
|
17
|
+
layout :version, :uint, # Set version to 2
|
|
18
|
+
:zertifikatHandle, :uint,
|
|
19
|
+
:pin, :pointer,
|
|
20
|
+
:abrufCode, :pointer
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
class ZertifikatParameter < FFI::Struct
|
|
24
|
+
layout :version, :uint, # Set version to 1
|
|
25
|
+
:name, :pointer,
|
|
26
|
+
:land, :pointer, # "DE" (optional)
|
|
27
|
+
:ort, :pointer, # Prefixed with zip code, i.e. "D-10179 Berlin"
|
|
28
|
+
:address, :pointer, # Street and number
|
|
29
|
+
:email, :pointer, # (optional)
|
|
30
|
+
:organization,:pointer,
|
|
31
|
+
:unit, :pointer,
|
|
32
|
+
:description, :pointer
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
BearbeitungFlag = enum(
|
|
36
|
+
:validiere, (1 << 1),
|
|
37
|
+
:sende, (1 << 2),
|
|
38
|
+
:drucke, (1 << 5)
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
ERIC_LOG_ERROR = 4
|
|
42
|
+
ERIC_LOG_WARN = 3
|
|
43
|
+
ERIC_LOG_INFO = 2
|
|
44
|
+
ERIC_LOG_DEBUG = 1
|
|
45
|
+
ERIC_LOG_TRACE = 0
|
|
46
|
+
|
|
47
|
+
LOGGER_SEVERITY = {
|
|
48
|
+
ERIC_LOG_ERROR => Logger::ERROR,
|
|
49
|
+
ERIC_LOG_WARN => Logger::WARN,
|
|
50
|
+
ERIC_LOG_INFO => Logger::INFO,
|
|
51
|
+
ERIC_LOG_DEBUG => Logger::DEBUG,
|
|
52
|
+
ERIC_LOG_TRACE => Logger::DEBUG
|
|
53
|
+
}
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
data/liberic.gemspec
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
|
+
require 'liberic/version'
|
|
5
|
+
|
|
6
|
+
Gem::Specification.new do |spec|
|
|
7
|
+
spec.name = "liberic"
|
|
8
|
+
spec.version = Liberic::VERSION
|
|
9
|
+
spec.authors = ["Malte Münchert"]
|
|
10
|
+
spec.license = 'MIT'
|
|
11
|
+
spec.email = ["malte.muenchert@gmx.net"]
|
|
12
|
+
|
|
13
|
+
spec.summary = %q{Ruby bindings for ELSTER/ERiC (German Tax Authority Service)}
|
|
14
|
+
spec.description = %q{Liberic is a ruby wrapper for ERiC, a C library to interact with German Tax Authority's ELSTER service.}
|
|
15
|
+
spec.homepage = "https://www.github.com/mpm/liberic-ruby"
|
|
16
|
+
|
|
17
|
+
# Prevent pushing this gem to RubyGems.org by setting 'allowed_push_host', or
|
|
18
|
+
# delete this section to allow pushing this gem to any host.
|
|
19
|
+
#if spec.respond_to?(:metadata)
|
|
20
|
+
#spec.metadata['allowed_push_host'] = "TODO: Set to 'http://mygemserver.com'"
|
|
21
|
+
#else
|
|
22
|
+
#raise "RubyGems 2.0 or newer is required to protect against public gem pushes."
|
|
23
|
+
#end
|
|
24
|
+
|
|
25
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
26
|
+
spec.bindir = "exe"
|
|
27
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
28
|
+
spec.require_paths = ["lib"]
|
|
29
|
+
|
|
30
|
+
spec.add_dependency "ffi", "~> 1.9"
|
|
31
|
+
spec.add_dependency "nokogiri", "~> 1.6"
|
|
32
|
+
|
|
33
|
+
spec.add_development_dependency "bundler", "~> 1.10"
|
|
34
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
|
35
|
+
spec.add_development_dependency "rspec", "~> 3.3"
|
|
36
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: liberic
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.1.0
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Malte Münchert
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: exe
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2016-05-19 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: ffi
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '1.9'
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - "~>"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '1.9'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: nokogiri
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - "~>"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '1.6'
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - "~>"
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '1.6'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: bundler
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - "~>"
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '1.10'
|
|
48
|
+
type: :development
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - "~>"
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '1.10'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: rake
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '10.0'
|
|
62
|
+
type: :development
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '10.0'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: rspec
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - "~>"
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '3.3'
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - "~>"
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '3.3'
|
|
83
|
+
description: Liberic is a ruby wrapper for ERiC, a C library to interact with German
|
|
84
|
+
Tax Authority's ELSTER service.
|
|
85
|
+
email:
|
|
86
|
+
- malte.muenchert@gmx.net
|
|
87
|
+
executables: []
|
|
88
|
+
extensions: []
|
|
89
|
+
extra_rdoc_files: []
|
|
90
|
+
files:
|
|
91
|
+
- ".gitignore"
|
|
92
|
+
- ".rspec"
|
|
93
|
+
- ".travis.yml"
|
|
94
|
+
- CODE_OF_CONDUCT.md
|
|
95
|
+
- Gemfile
|
|
96
|
+
- LICENSE
|
|
97
|
+
- README.md
|
|
98
|
+
- Rakefile
|
|
99
|
+
- bin/console
|
|
100
|
+
- bin/setup
|
|
101
|
+
- examples/steuersatz.xml
|
|
102
|
+
- examples/submit_ekst.rb
|
|
103
|
+
- lib/liberic.rb
|
|
104
|
+
- lib/liberic/boot.rb
|
|
105
|
+
- lib/liberic/config.rb
|
|
106
|
+
- lib/liberic/helpers.rb
|
|
107
|
+
- lib/liberic/helpers/invocation.rb
|
|
108
|
+
- lib/liberic/process.rb
|
|
109
|
+
- lib/liberic/response.rb
|
|
110
|
+
- lib/liberic/response/errors.rb
|
|
111
|
+
- lib/liberic/response/version.rb
|
|
112
|
+
- lib/liberic/sdk.rb
|
|
113
|
+
- lib/liberic/sdk/api.rb
|
|
114
|
+
- lib/liberic/sdk/configuration.rb
|
|
115
|
+
- lib/liberic/sdk/def.rb
|
|
116
|
+
- lib/liberic/sdk/fehlercodes.rb
|
|
117
|
+
- lib/liberic/sdk/types.rb
|
|
118
|
+
- lib/liberic/version.rb
|
|
119
|
+
- liberic.gemspec
|
|
120
|
+
homepage: https://www.github.com/mpm/liberic-ruby
|
|
121
|
+
licenses:
|
|
122
|
+
- MIT
|
|
123
|
+
metadata: {}
|
|
124
|
+
post_install_message:
|
|
125
|
+
rdoc_options: []
|
|
126
|
+
require_paths:
|
|
127
|
+
- lib
|
|
128
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
129
|
+
requirements:
|
|
130
|
+
- - ">="
|
|
131
|
+
- !ruby/object:Gem::Version
|
|
132
|
+
version: '0'
|
|
133
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
134
|
+
requirements:
|
|
135
|
+
- - ">="
|
|
136
|
+
- !ruby/object:Gem::Version
|
|
137
|
+
version: '0'
|
|
138
|
+
requirements: []
|
|
139
|
+
rubyforge_project:
|
|
140
|
+
rubygems_version: 2.4.6
|
|
141
|
+
signing_key:
|
|
142
|
+
specification_version: 4
|
|
143
|
+
summary: Ruby bindings for ELSTER/ERiC (German Tax Authority Service)
|
|
144
|
+
test_files: []
|