|
13 | 13 | # See Net::IMAP for documentation.
|
14 | 14 | #
|
15 | 15 |
|
16 |
| - |
17 | 16 | require "socket"
|
18 | 17 | require "monitor"
|
19 | 18 | require 'net/protocol'
|
|
22 | 21 | rescue LoadError
|
23 | 22 | end
|
24 | 23 |
|
25 |
| -require_relative "imap/command_data" |
26 |
| -require_relative "imap/data_encoding" |
27 |
| -require_relative "imap/flags" |
28 |
| -require_relative "imap/response_data" |
29 |
| -require_relative "imap/response_parser" |
30 |
| - |
31 | 24 | module Net
|
32 | 25 |
|
33 | 26 | #
|
@@ -1462,118 +1455,13 @@ def start_tls_session(params = {})
|
1462 | 1455 | end
|
1463 | 1456 | end
|
1464 | 1457 |
|
1465 |
| - # Common validators of number and nz_number types |
1466 |
| - module NumValidator # :nodoc |
1467 |
| - class << self |
1468 |
| - # Check is passed argument valid 'number' in RFC 3501 terminology |
1469 |
| - def valid_number?(num) |
1470 |
| - # [RFC 3501] |
1471 |
| - # number = 1*DIGIT |
1472 |
| - # ; Unsigned 32-bit integer |
1473 |
| - # ; (0 <= n < 4,294,967,296) |
1474 |
| - num >= 0 && num < 4294967296 |
1475 |
| - end |
1476 |
| - |
1477 |
| - # Check is passed argument valid 'nz_number' in RFC 3501 terminology |
1478 |
| - def valid_nz_number?(num) |
1479 |
| - # [RFC 3501] |
1480 |
| - # nz-number = digit-nz *DIGIT |
1481 |
| - # ; Non-zero unsigned 32-bit integer |
1482 |
| - # ; (0 < n < 4,294,967,296) |
1483 |
| - num != 0 && valid_number?(num) |
1484 |
| - end |
1485 |
| - |
1486 |
| - # Check is passed argument valid 'mod_sequence_value' in RFC 4551 terminology |
1487 |
| - def valid_mod_sequence_value?(num) |
1488 |
| - # mod-sequence-value = 1*DIGIT |
1489 |
| - # ; Positive unsigned 64-bit integer |
1490 |
| - # ; (mod-sequence) |
1491 |
| - # ; (1 <= n < 18,446,744,073,709,551,615) |
1492 |
| - num >= 1 && num < 18446744073709551615 |
1493 |
| - end |
1494 |
| - |
1495 |
| - # Ensure argument is 'number' or raise DataFormatError |
1496 |
| - def ensure_number(num) |
1497 |
| - return if valid_number?(num) |
1498 |
| - |
1499 |
| - msg = "number must be unsigned 32-bit integer: #{num}" |
1500 |
| - raise DataFormatError, msg |
1501 |
| - end |
1502 |
| - |
1503 |
| - # Ensure argument is 'nz_number' or raise DataFormatError |
1504 |
| - def ensure_nz_number(num) |
1505 |
| - return if valid_nz_number?(num) |
1506 |
| - |
1507 |
| - msg = "nz_number must be non-zero unsigned 32-bit integer: #{num}" |
1508 |
| - raise DataFormatError, msg |
1509 |
| - end |
1510 |
| - |
1511 |
| - # Ensure argument is 'mod_sequence_value' or raise DataFormatError |
1512 |
| - def ensure_mod_sequence_value(num) |
1513 |
| - return if valid_mod_sequence_value?(num) |
1514 |
| - |
1515 |
| - msg = "mod_sequence_value must be unsigned 64-bit integer: #{num}" |
1516 |
| - raise DataFormatError, msg |
1517 |
| - end |
1518 |
| - end |
1519 |
| - end |
1520 |
| - |
1521 |
| - # Superclass of IMAP errors. |
1522 |
| - class Error < StandardError |
1523 |
| - end |
1524 |
| - |
1525 |
| - # Error raised when data is in the incorrect format. |
1526 |
| - class DataFormatError < Error |
1527 |
| - end |
1528 |
| - |
1529 |
| - # Error raised when a response from the server is non-parseable. |
1530 |
| - class ResponseParseError < Error |
1531 |
| - end |
1532 |
| - |
1533 |
| - # Superclass of all errors used to encapsulate "fail" responses |
1534 |
| - # from the server. |
1535 |
| - class ResponseError < Error |
1536 |
| - |
1537 |
| - # The response that caused this error |
1538 |
| - attr_accessor :response |
1539 |
| - |
1540 |
| - def initialize(response) |
1541 |
| - @response = response |
1542 |
| - |
1543 |
| - super @response.data.text |
1544 |
| - end |
1545 |
| - |
1546 |
| - end |
1547 |
| - |
1548 |
| - # Error raised upon a "NO" response from the server, indicating |
1549 |
| - # that the client command could not be completed successfully. |
1550 |
| - class NoResponseError < ResponseError |
1551 |
| - end |
1552 |
| - |
1553 |
| - # Error raised upon a "BAD" response from the server, indicating |
1554 |
| - # that the client command violated the IMAP protocol, or an internal |
1555 |
| - # server failure has occurred. |
1556 |
| - class BadResponseError < ResponseError |
1557 |
| - end |
1558 |
| - |
1559 |
| - # Error raised upon a "BYE" response from the server, indicating |
1560 |
| - # that the client is not being allowed to login, or has been timed |
1561 |
| - # out due to inactivity. |
1562 |
| - class ByeResponseError < ResponseError |
1563 |
| - end |
1564 |
| - |
1565 |
| - # Error raised upon an unknown response from the server. |
1566 |
| - class UnknownResponseError < ResponseError |
1567 |
| - end |
1568 |
| - |
1569 |
| - RESPONSE_ERRORS = Hash.new(ResponseError) |
1570 |
| - RESPONSE_ERRORS["NO"] = NoResponseError |
1571 |
| - RESPONSE_ERRORS["BAD"] = BadResponseError |
1572 |
| - |
1573 |
| - # Error raised when too many flags are interned to symbols. |
1574 |
| - class FlagCountError < Error |
1575 |
| - end |
1576 | 1458 | end
|
1577 | 1459 | end
|
1578 | 1460 |
|
| 1461 | +require_relative "imap/errors" |
| 1462 | +require_relative "imap/command_data" |
| 1463 | +require_relative "imap/data_encoding" |
| 1464 | +require_relative "imap/flags" |
| 1465 | +require_relative "imap/response_data" |
| 1466 | +require_relative "imap/response_parser" |
1579 | 1467 | require_relative "imap/authenticators"
|
0 commit comments