log4ever 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. data/.gitignore +33 -0
  2. data/.project +11 -0
  3. data/README.md +36 -0
  4. data/config/evernote.auth.test.yml +1 -0
  5. data/config/log4r.xml +19 -0
  6. data/lib/log4r/evernote/lib/Evernote/EDAM/errors_constants.rb +14 -0
  7. data/lib/log4r/evernote/lib/Evernote/EDAM/errors_types.rb +128 -0
  8. data/lib/log4r/evernote/lib/Evernote/EDAM/limits_constants.rb +240 -0
  9. data/lib/log4r/evernote/lib/Evernote/EDAM/limits_types.rb +13 -0
  10. data/lib/log4r/evernote/lib/Evernote/EDAM/note_store.rb +5487 -0
  11. data/lib/log4r/evernote/lib/Evernote/EDAM/note_store_constants.rb +14 -0
  12. data/lib/log4r/evernote/lib/Evernote/EDAM/note_store_types.rb +1012 -0
  13. data/lib/log4r/evernote/lib/Evernote/EDAM/types_constants.rb +20 -0
  14. data/lib/log4r/evernote/lib/Evernote/EDAM/types_types.rb +1792 -0
  15. data/lib/log4r/evernote/lib/Evernote/EDAM/user_store.rb +549 -0
  16. data/lib/log4r/evernote/lib/Evernote/EDAM/user_store_constants.rb +18 -0
  17. data/lib/log4r/evernote/lib/Evernote/EDAM/user_store_types.rb +415 -0
  18. data/lib/log4r/evernote/lib/thrift/client.rb +62 -0
  19. data/lib/log4r/evernote/lib/thrift/core_ext/fixnum.rb +29 -0
  20. data/lib/log4r/evernote/lib/thrift/core_ext.rb +23 -0
  21. data/lib/log4r/evernote/lib/thrift/exceptions.rb +84 -0
  22. data/lib/log4r/evernote/lib/thrift/processor.rb +57 -0
  23. data/lib/log4r/evernote/lib/thrift/protocol/base_protocol.rb +290 -0
  24. data/lib/log4r/evernote/lib/thrift/protocol/binary_protocol.rb +229 -0
  25. data/lib/log4r/evernote/lib/thrift/protocol/binary_protocol_accelerated.rb +39 -0
  26. data/lib/log4r/evernote/lib/thrift/protocol/compact_protocol.rb +426 -0
  27. data/lib/log4r/evernote/lib/thrift/serializer/deserializer.rb +33 -0
  28. data/lib/log4r/evernote/lib/thrift/serializer/serializer.rb +34 -0
  29. data/lib/log4r/evernote/lib/thrift/server/base_server.rb +31 -0
  30. data/lib/log4r/evernote/lib/thrift/server/mongrel_http_server.rb +58 -0
  31. data/lib/log4r/evernote/lib/thrift/server/nonblocking_server.rb +305 -0
  32. data/lib/log4r/evernote/lib/thrift/server/simple_server.rb +43 -0
  33. data/lib/log4r/evernote/lib/thrift/server/thread_pool_server.rb +75 -0
  34. data/lib/log4r/evernote/lib/thrift/server/threaded_server.rb +47 -0
  35. data/lib/log4r/evernote/lib/thrift/struct.rb +237 -0
  36. data/lib/log4r/evernote/lib/thrift/struct_union.rb +192 -0
  37. data/lib/log4r/evernote/lib/thrift/thrift_native.rb +24 -0
  38. data/lib/log4r/evernote/lib/thrift/transport/base_server_transport.rb +37 -0
  39. data/lib/log4r/evernote/lib/thrift/transport/base_transport.rb +107 -0
  40. data/lib/log4r/evernote/lib/thrift/transport/buffered_transport.rb +108 -0
  41. data/lib/log4r/evernote/lib/thrift/transport/framed_transport.rb +116 -0
  42. data/lib/log4r/evernote/lib/thrift/transport/http_client_transport.rb +53 -0
  43. data/lib/log4r/evernote/lib/thrift/transport/io_stream_transport.rb +39 -0
  44. data/lib/log4r/evernote/lib/thrift/transport/memory_buffer_transport.rb +125 -0
  45. data/lib/log4r/evernote/lib/thrift/transport/server_socket.rb +63 -0
  46. data/lib/log4r/evernote/lib/thrift/transport/socket.rb +137 -0
  47. data/lib/log4r/evernote/lib/thrift/transport/unix_server_socket.rb +60 -0
  48. data/lib/log4r/evernote/lib/thrift/transport/unix_socket.rb +40 -0
  49. data/lib/log4r/evernote/lib/thrift/types.rb +101 -0
  50. data/lib/log4r/evernote/lib/thrift/union.rb +179 -0
  51. data/lib/log4r/evernote/lib/thrift.rb +64 -0
  52. data/lib/log4r/evernote.rb +206 -0
  53. data/lib/log4r/outputter/evernoteoutputter.rb +156 -0
  54. data/spec/log4ever_spec.rb +94 -0
  55. data/spec/spec_helper.rb +14 -0
  56. metadata +105 -0
data/.gitignore ADDED
@@ -0,0 +1,33 @@
1
+ #*
2
+ *$
3
+ *.BAK
4
+ *.Z
5
+ *.bak
6
+ *.class
7
+ *.elc
8
+ *.ln
9
+ *.log
10
+ *.o
11
+ *.obj
12
+ *.olb
13
+ *.old
14
+ *.orig
15
+ *.pyc
16
+ *.pyo
17
+ *.rej
18
+ *~
19
+ ,*
20
+ .#*
21
+ .DS_Store
22
+ .del-*
23
+ .deployables
24
+ .make.state
25
+ .nse_depinfo
26
+ .svn
27
+ CVS.adm
28
+ RCS
29
+ RCSLOG
30
+ SCCS
31
+ _$*
32
+ _svn
33
+ config/evernote.auth.yml
data/.project ADDED
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <projectDescription>
3
+ <name>log4ever</name>
4
+ <comment></comment>
5
+ <projects>
6
+ </projects>
7
+ <buildSpec>
8
+ </buildSpec>
9
+ <natures>
10
+ </natures>
11
+ </projectDescription>
data/README.md ADDED
@@ -0,0 +1,36 @@
1
+ #log4ever
2
+ log4ever is simple logger for evernote. It is available as an extension of [log4r](http://log4r.rubyforge.org/).
3
+ ***
4
+ ###Usage
5
+
6
+ logger = Logger.new("Evernote")
7
+ logger.outputters = StdoutOutputter.new('console')
8
+ formatter = PatternFormatter.new(
9
+ :pattern => "%d %C[%l]: %M ",
10
+ :date_format => "%Y/%m/%d %H:%M:%Sm"
11
+ )
12
+ stdoutOutputter = StdoutOutputter.new('console', {
13
+ :formatter => formatter
14
+ })
15
+ evernoteOutputter = EvernoteOutputter.new('evernote', {
16
+ :env => "production", # Execution environment in Evernote (production or sandbox)
17
+ :auth_token => "xxxxxxxxxxxxxxxxxxxxxxx" # evernote auth token
18
+ :stack => "Log4ever", # evernote stack name
19
+ :notebook => "DevelopmentLog", # evernote notebook name
20
+ :tags => ['Log'], # evernote tag (Can be specified in the list)
21
+ :maxsize => 500, # Maximum size of the logs to be rotated
22
+ #:shift_age => Log4ever::ShiftAge::DAILY, # Cycle of the logs to be rotated
23
+ :formatter => formatter
24
+ })
25
+
26
+ logger.outputters = [stdoutOutputter, evernoteOutputter]
27
+ logger.info('log output')
28
+ Output:
29
+
30
+ 2012-08-06 21:12:31 Evernote[INFO]: log output
31
+
32
+ The output results are stored in Evernote.
33
+
34
+ ##License
35
+ Licensed under the MIT
36
+ http://www.opensource.org/licenses/mit-license.php
@@ -0,0 +1 @@
1
+ auth_token: your token
data/config/log4r.xml ADDED
@@ -0,0 +1,19 @@
1
+ <log4r_config>
2
+ <pre-config>
3
+ <global level="DEBUG"/>
4
+ </pre-config>
5
+
6
+ <outputter name="stdout" type="StdoutOutputter">
7
+ </outputter>
8
+ <outputter name="Evernote" type="EvernoteOutputter">
9
+ <env>sandbox</env>
10
+ <notebook>DevelopmentLog</notebook>
11
+ <stack>Log4ever</stack>
12
+ <auth_token>your token</auth_token>
13
+ <formatter type="PatternFormatter" pattern="%d %C[%l]: %M " date_format="%Y/%m/%d %H:%M:%S"/>
14
+ </outputter>
15
+
16
+ <logger name="Evernote">
17
+ <outputter>Evernote</outputter>
18
+ </logger>
19
+ </log4r_config>
@@ -0,0 +1,14 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (0.8.0)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'errors_types'
8
+
9
+ module Evernote
10
+ module EDAM
11
+ module Error
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,128 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (0.8.0)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+
8
+ module Evernote
9
+ module EDAM
10
+ module Error
11
+ module EDAMErrorCode
12
+ UNKNOWN = 1
13
+ BAD_DATA_FORMAT = 2
14
+ PERMISSION_DENIED = 3
15
+ INTERNAL_ERROR = 4
16
+ DATA_REQUIRED = 5
17
+ LIMIT_REACHED = 6
18
+ QUOTA_REACHED = 7
19
+ INVALID_AUTH = 8
20
+ AUTH_EXPIRED = 9
21
+ DATA_CONFLICT = 10
22
+ ENML_VALIDATION = 11
23
+ SHARD_UNAVAILABLE = 12
24
+ LEN_TOO_SHORT = 13
25
+ LEN_TOO_LONG = 14
26
+ TOO_FEW = 15
27
+ TOO_MANY = 16
28
+ UNSUPPORTED_OPERATION = 17
29
+ VALUE_MAP = {1 => "UNKNOWN", 2 => "BAD_DATA_FORMAT", 3 => "PERMISSION_DENIED", 4 => "INTERNAL_ERROR", 5 => "DATA_REQUIRED", 6 => "LIMIT_REACHED", 7 => "QUOTA_REACHED", 8 => "INVALID_AUTH", 9 => "AUTH_EXPIRED", 10 => "DATA_CONFLICT", 11 => "ENML_VALIDATION", 12 => "SHARD_UNAVAILABLE", 13 => "LEN_TOO_SHORT", 14 => "LEN_TOO_LONG", 15 => "TOO_FEW", 16 => "TOO_MANY", 17 => "UNSUPPORTED_OPERATION"}
30
+ VALID_VALUES = Set.new([UNKNOWN, BAD_DATA_FORMAT, PERMISSION_DENIED, INTERNAL_ERROR, DATA_REQUIRED, LIMIT_REACHED, QUOTA_REACHED, INVALID_AUTH, AUTH_EXPIRED, DATA_CONFLICT, ENML_VALIDATION, SHARD_UNAVAILABLE, LEN_TOO_SHORT, LEN_TOO_LONG, TOO_FEW, TOO_MANY, UNSUPPORTED_OPERATION]).freeze
31
+ end
32
+
33
+ # This exception is thrown by EDAM procedures when a call fails as a result of
34
+ # a problem that a user may be able to resolve. For example, if the user
35
+ # attempts to add a note to their account which would exceed their storage
36
+ # quota, this type of exception may be thrown to indicate the source of the
37
+ # error so that they can choose an alternate action.
38
+ #
39
+ # This exception would not be used for internal system errors that do not
40
+ # reflect user actions, but rather reflect a problem within the service that
41
+ # the user cannot resolve.
42
+ #
43
+ # errorCode: The numeric code indicating the type of error that occurred.
44
+ # must be one of the values of EDAMErrorCode.
45
+ #
46
+ # parameter: If the error applied to a particular input parameter, this will
47
+ # indicate which parameter.
48
+ class EDAMUserException < ::Thrift::Exception
49
+ include ::Thrift::Struct, ::Thrift::Struct_Union
50
+ ERRORCODE = 1
51
+ PARAMETER = 2
52
+
53
+ FIELDS = {
54
+ ERRORCODE => {:type => ::Thrift::Types::I32, :name => 'errorCode', :enum_class => Evernote::EDAM::Error::EDAMErrorCode},
55
+ PARAMETER => {:type => ::Thrift::Types::STRING, :name => 'parameter', :optional => true}
56
+ }
57
+
58
+ def struct_fields; FIELDS; end
59
+
60
+ def validate
61
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field errorCode is unset!') unless @errorCode
62
+ unless @errorCode.nil? || Evernote::EDAM::Error::EDAMErrorCode::VALID_VALUES.include?(@errorCode)
63
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field errorCode!')
64
+ end
65
+ end
66
+
67
+ ::Thrift::Struct.generate_accessors self
68
+ end
69
+
70
+ # This exception is thrown by EDAM procedures when a call fails as a result of
71
+ # an a problem in the service that could not be changed through user action.
72
+ #
73
+ # errorCode: The numeric code indicating the type of error that occurred.
74
+ # must be one of the values of EDAMErrorCode.
75
+ #
76
+ # message: This may contain additional information about the error
77
+ class EDAMSystemException < ::Thrift::Exception
78
+ include ::Thrift::Struct, ::Thrift::Struct_Union
79
+ ERRORCODE = 1
80
+ MESSAGE = 2
81
+
82
+ FIELDS = {
83
+ ERRORCODE => {:type => ::Thrift::Types::I32, :name => 'errorCode', :enum_class => Evernote::EDAM::Error::EDAMErrorCode},
84
+ MESSAGE => {:type => ::Thrift::Types::STRING, :name => 'message', :optional => true}
85
+ }
86
+
87
+ def struct_fields; FIELDS; end
88
+
89
+ def validate
90
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field errorCode is unset!') unless @errorCode
91
+ unless @errorCode.nil? || Evernote::EDAM::Error::EDAMErrorCode::VALID_VALUES.include?(@errorCode)
92
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field errorCode!')
93
+ end
94
+ end
95
+
96
+ ::Thrift::Struct.generate_accessors self
97
+ end
98
+
99
+ # This exception is thrown by EDAM procedures when a caller asks to perform
100
+ # an operation that does not exist. This may be thrown based on an invalid
101
+ # primary identifier (e.g. a bad GUID), or when the caller refers to an object
102
+ # by another unique identifier (e.g. a User's email address).
103
+ #
104
+ # identifier: the object identifier that was not found on the server.
105
+ #
106
+ # key: the value passed from the client in the identifier, which was not
107
+ # found. E.g. the GUID of an object that was not found.
108
+ class EDAMNotFoundException < ::Thrift::Exception
109
+ include ::Thrift::Struct, ::Thrift::Struct_Union
110
+ IDENTIFIER = 1
111
+ KEY = 2
112
+
113
+ FIELDS = {
114
+ IDENTIFIER => {:type => ::Thrift::Types::STRING, :name => 'identifier', :optional => true},
115
+ KEY => {:type => ::Thrift::Types::STRING, :name => 'key', :optional => true}
116
+ }
117
+
118
+ def struct_fields; FIELDS; end
119
+
120
+ def validate
121
+ end
122
+
123
+ ::Thrift::Struct.generate_accessors self
124
+ end
125
+
126
+ end
127
+ end
128
+ end
@@ -0,0 +1,240 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (0.8.0)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+ require 'limits_types'
8
+
9
+ module Evernote
10
+ module EDAM
11
+ module Limits
12
+ EDAM_ATTRIBUTE_LEN_MIN = 1
13
+
14
+ EDAM_ATTRIBUTE_LEN_MAX = 4096
15
+
16
+ EDAM_ATTRIBUTE_REGEX = %q"^[^\\p{Cc}\\p{Zl}\\p{Zp}]{1,4096}$"
17
+
18
+ EDAM_ATTRIBUTE_LIST_MAX = 100
19
+
20
+ EDAM_ATTRIBUTE_MAP_MAX = 100
21
+
22
+ EDAM_GUID_LEN_MIN = 36
23
+
24
+ EDAM_GUID_LEN_MAX = 36
25
+
26
+ EDAM_GUID_REGEX = %q"^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$"
27
+
28
+ EDAM_EMAIL_LEN_MIN = 6
29
+
30
+ EDAM_EMAIL_LEN_MAX = 255
31
+
32
+ EDAM_EMAIL_LOCAL_REGEX = %q"^[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(\\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*$"
33
+
34
+ EDAM_EMAIL_DOMAIN_REGEX = %q"^[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*\\.([A-Za-z]{2,})$"
35
+
36
+ EDAM_EMAIL_REGEX = %q"^[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(\\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*\\.([A-Za-z]{2,})$"
37
+
38
+ EDAM_TIMEZONE_LEN_MIN = 1
39
+
40
+ EDAM_TIMEZONE_LEN_MAX = 32
41
+
42
+ EDAM_TIMEZONE_REGEX = %q"^([A-Za-z_-]+(/[A-Za-z_-]+)*)|(GMT(-|\\+)[0-9]{1,2}(:[0-9]{2})?)$"
43
+
44
+ EDAM_MIME_LEN_MIN = 3
45
+
46
+ EDAM_MIME_LEN_MAX = 255
47
+
48
+ EDAM_MIME_REGEX = %q"^[A-Za-z]+/[A-Za-z0-9._+-]+$"
49
+
50
+ EDAM_MIME_TYPE_GIF = %q"image/gif"
51
+
52
+ EDAM_MIME_TYPE_JPEG = %q"image/jpeg"
53
+
54
+ EDAM_MIME_TYPE_PNG = %q"image/png"
55
+
56
+ EDAM_MIME_TYPE_WAV = %q"audio/wav"
57
+
58
+ EDAM_MIME_TYPE_MP3 = %q"audio/mpeg"
59
+
60
+ EDAM_MIME_TYPE_AMR = %q"audio/amr"
61
+
62
+ EDAM_MIME_TYPE_MP4_VIDEO = %q"video/mp4"
63
+
64
+ EDAM_MIME_TYPE_INK = %q"application/vnd.evernote.ink"
65
+
66
+ EDAM_MIME_TYPE_PDF = %q"application/pdf"
67
+
68
+ EDAM_MIME_TYPE_DEFAULT = %q"application/octet-stream"
69
+
70
+ EDAM_MIME_TYPES = Set.new([
71
+ %q"image/gif",
72
+ %q"image/jpeg",
73
+ %q"image/png",
74
+ %q"audio/wav",
75
+ %q"audio/mpeg",
76
+ %q"audio/amr",
77
+ %q"application/vnd.evernote.ink",
78
+ %q"application/pdf",
79
+ %q"video/mp4",
80
+ ])
81
+
82
+ EDAM_COMMERCE_SERVICE_GOOGLE = %q"Google"
83
+
84
+ EDAM_COMMERCE_SERVICE_PAYPAL = %q"Paypal"
85
+
86
+ EDAM_COMMERCE_SERVICE_GIFT = %q"Gift"
87
+
88
+ EDAM_COMMERCE_SERVICE_TRIALPAY = %q"TrialPay"
89
+
90
+ EDAM_COMMERCE_SERVICE_TRIAL = %q"Trial"
91
+
92
+ EDAM_COMMERCE_SERVICE_GROUP = %q"Group"
93
+
94
+ EDAM_COMMERCE_SERVICE_CYBERSOURCE = %q"CYBERSRC"
95
+
96
+ EDAM_COMMERCE_DEFAULT_CURRENCY_COUNTRY_CODE = %q"USD"
97
+
98
+ EDAM_SEARCH_QUERY_LEN_MIN = 0
99
+
100
+ EDAM_SEARCH_QUERY_LEN_MAX = 1024
101
+
102
+ EDAM_SEARCH_QUERY_REGEX = %q"^[^\\p{Cc}\\p{Zl}\\p{Zp}]{0,1024}$"
103
+
104
+ EDAM_HASH_LEN = 16
105
+
106
+ EDAM_USER_USERNAME_LEN_MIN = 1
107
+
108
+ EDAM_USER_USERNAME_LEN_MAX = 64
109
+
110
+ EDAM_USER_USERNAME_REGEX = %q"^[a-z0-9]([a-z0-9_-]{0,62}[a-z0-9])?$"
111
+
112
+ EDAM_USER_NAME_LEN_MIN = 1
113
+
114
+ EDAM_USER_NAME_LEN_MAX = 255
115
+
116
+ EDAM_USER_NAME_REGEX = %q"^[^\\p{Cc}\\p{Zl}\\p{Zp}]{1,255}$"
117
+
118
+ EDAM_TAG_NAME_LEN_MIN = 1
119
+
120
+ EDAM_TAG_NAME_LEN_MAX = 100
121
+
122
+ EDAM_TAG_NAME_REGEX = %q"^[^,\\p{Cc}\\p{Z}]([^,\\p{Cc}\\p{Zl}\\p{Zp}]{0,98}[^,\\p{Cc}\\p{Z}])?$"
123
+
124
+ EDAM_NOTE_TITLE_LEN_MIN = 1
125
+
126
+ EDAM_NOTE_TITLE_LEN_MAX = 255
127
+
128
+ EDAM_NOTE_TITLE_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,253}[^\\p{Cc}\\p{Z}])?$"
129
+
130
+ EDAM_NOTE_CONTENT_LEN_MIN = 0
131
+
132
+ EDAM_NOTE_CONTENT_LEN_MAX = 5242880
133
+
134
+ EDAM_APPLICATIONDATA_NAME_LEN_MIN = 3
135
+
136
+ EDAM_APPLICATIONDATA_NAME_LEN_MAX = 32
137
+
138
+ EDAM_APPLICATIONDATA_VALUE_LEN_MIN = 0
139
+
140
+ EDAM_APPLICATIONDATA_VALUE_LEN_MAX = 4092
141
+
142
+ EDAM_APPLICATIONDATA_ENTRY_LEN_MAX = 4095
143
+
144
+ EDAM_APPLICATIONDATA_NAME_REGEX = %q"^[A-Za-z0-9_.-]{3,32}$"
145
+
146
+ EDAM_APPLICATIONDATA_VALUE_REGEX = %q"^[^\\p{Cc}]{0,4092}$"
147
+
148
+ EDAM_NOTEBOOK_NAME_LEN_MIN = 1
149
+
150
+ EDAM_NOTEBOOK_NAME_LEN_MAX = 100
151
+
152
+ EDAM_NOTEBOOK_NAME_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,98}[^\\p{Cc}\\p{Z}])?$"
153
+
154
+ EDAM_NOTEBOOK_STACK_LEN_MIN = 1
155
+
156
+ EDAM_NOTEBOOK_STACK_LEN_MAX = 100
157
+
158
+ EDAM_NOTEBOOK_STACK_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,98}[^\\p{Cc}\\p{Z}])?$"
159
+
160
+ EDAM_PUBLISHING_URI_LEN_MIN = 1
161
+
162
+ EDAM_PUBLISHING_URI_LEN_MAX = 255
163
+
164
+ EDAM_PUBLISHING_URI_REGEX = %q"^[a-zA-Z0-9.~_+-]{1,255}$"
165
+
166
+ EDAM_PUBLISHING_URI_PROHIBITED = Set.new([
167
+ %q"..",
168
+ ])
169
+
170
+ EDAM_PUBLISHING_DESCRIPTION_LEN_MIN = 1
171
+
172
+ EDAM_PUBLISHING_DESCRIPTION_LEN_MAX = 200
173
+
174
+ EDAM_PUBLISHING_DESCRIPTION_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,198}[^\\p{Cc}\\p{Z}])?$"
175
+
176
+ EDAM_SAVED_SEARCH_NAME_LEN_MIN = 1
177
+
178
+ EDAM_SAVED_SEARCH_NAME_LEN_MAX = 100
179
+
180
+ EDAM_SAVED_SEARCH_NAME_REGEX = %q"^[^\\p{Cc}\\p{Z}]([^\\p{Cc}\\p{Zl}\\p{Zp}]{0,98}[^\\p{Cc}\\p{Z}])?$"
181
+
182
+ EDAM_USER_PASSWORD_LEN_MIN = 6
183
+
184
+ EDAM_USER_PASSWORD_LEN_MAX = 64
185
+
186
+ EDAM_USER_PASSWORD_REGEX = %q"^[A-Za-z0-9!#$%&'()*+,./:;<=>?@^_`{|}~\\[\\]\\\\-]{6,64}$"
187
+
188
+ EDAM_NOTE_TAGS_MAX = 100
189
+
190
+ EDAM_NOTE_RESOURCES_MAX = 1000
191
+
192
+ EDAM_USER_TAGS_MAX = 100000
193
+
194
+ EDAM_USER_SAVED_SEARCHES_MAX = 100
195
+
196
+ EDAM_USER_NOTES_MAX = 100000
197
+
198
+ EDAM_USER_NOTEBOOKS_MAX = 250
199
+
200
+ EDAM_USER_RECENT_MAILED_ADDRESSES_MAX = 10
201
+
202
+ EDAM_USER_MAIL_LIMIT_DAILY_FREE = 50
203
+
204
+ EDAM_USER_MAIL_LIMIT_DAILY_PREMIUM = 200
205
+
206
+ EDAM_USER_UPLOAD_LIMIT_FREE = 62914560
207
+
208
+ EDAM_USER_UPLOAD_LIMIT_PREMIUM = 1073741824
209
+
210
+ EDAM_NOTE_SIZE_MAX_FREE = 26214400
211
+
212
+ EDAM_NOTE_SIZE_MAX_PREMIUM = 52428800
213
+
214
+ EDAM_RESOURCE_SIZE_MAX_FREE = 26214400
215
+
216
+ EDAM_RESOURCE_SIZE_MAX_PREMIUM = 52428800
217
+
218
+ EDAM_USER_LINKED_NOTEBOOK_MAX = 100
219
+
220
+ EDAM_NOTEBOOK_SHARED_NOTEBOOK_MAX = 250
221
+
222
+ EDAM_NOTE_CONTENT_CLASS_LEN_MIN = 3
223
+
224
+ EDAM_NOTE_CONTENT_CLASS_LEN_MAX = 32
225
+
226
+ EDAM_HELLO_APP_CONTENT_CLASS_PREFIX = %q"evernote.hello."
227
+
228
+ EDAM_FOOD_APP_CONTENT_CLASS_PREFIX = %q"evernote.food."
229
+
230
+ EDAM_NOTE_CONTENT_CLASS_REGEX = %q"^[A-Za-z0-9_.-]{3,32}$"
231
+
232
+ EDAM_CONTENT_CLASS_HELLO_ENCOUNTER = %q"evernote.hello.encounter"
233
+
234
+ EDAM_CONTENT_CLASS_HELLO_PROFILE = %q"evernote.hello.profile"
235
+
236
+ EDAM_CONTENT_CLASS_FOOD_MEAL = %q"evernote.food.meal"
237
+
238
+ end
239
+ end
240
+ end
@@ -0,0 +1,13 @@
1
+ #
2
+ # Autogenerated by Thrift Compiler (0.8.0)
3
+ #
4
+ # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
5
+ #
6
+
7
+
8
+ module Evernote
9
+ module EDAM
10
+ module Limits
11
+ end
12
+ end
13
+ end