diff options
author | Zac Medico <zmedico@gentoo.org> | 2012-02-17 14:56:21 -0800 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2012-02-17 14:56:21 -0800 |
commit | c37684d037834a51b036d861ee37890edded366e (patch) | |
tree | ddfcda06f2ff6abfdf83f6ba114353cc03ba6399 /pym/_emerge/PollSelectAdapter.py | |
parent | 6e6ef6f87f8cb2d51a53b2d4417c4b370f7ca495 (diff) | |
download | portage-c37684d037834a51b036d861ee37890edded366e.tar.gz portage-c37684d037834a51b036d861ee37890edded366e.tar.bz2 portage-c37684d037834a51b036d861ee37890edded366e.zip |
Move Poll{Constants,SelectAdapter} to _eventloop.
Diffstat (limited to 'pym/_emerge/PollSelectAdapter.py')
-rw-r--r-- | pym/_emerge/PollSelectAdapter.py | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/pym/_emerge/PollSelectAdapter.py b/pym/_emerge/PollSelectAdapter.py deleted file mode 100644 index c11dab828..000000000 --- a/pym/_emerge/PollSelectAdapter.py +++ /dev/null @@ -1,73 +0,0 @@ -# Copyright 1999-2009 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -from _emerge.PollConstants import PollConstants -import select -class PollSelectAdapter(PollConstants): - - """ - Use select to emulate a poll object, for - systems that don't support poll(). - """ - - def __init__(self): - self._registered = {} - self._select_args = [[], [], []] - - def register(self, fd, *args): - """ - Only POLLIN is currently supported! - """ - if len(args) > 1: - raise TypeError( - "register expected at most 2 arguments, got " + \ - repr(1 + len(args))) - - eventmask = PollConstants.POLLIN | \ - PollConstants.POLLPRI | PollConstants.POLLOUT - if args: - eventmask = args[0] - - self._registered[fd] = eventmask - self._select_args = None - - def unregister(self, fd): - self._select_args = None - del self._registered[fd] - - def poll(self, *args): - if len(args) > 1: - raise TypeError( - "poll expected at most 2 arguments, got " + \ - repr(1 + len(args))) - - timeout = None - if args: - timeout = args[0] - - select_args = self._select_args - if select_args is None: - select_args = [list(self._registered), [], []] - - if timeout is not None: - select_args = select_args[:] - # Translate poll() timeout args to select() timeout args: - # - # | units | value(s) for indefinite block - # ---------|--------------|------------------------------ - # poll | milliseconds | omitted, negative, or None - # ---------|--------------|------------------------------ - # select | seconds | omitted - # ---------|--------------|------------------------------ - - if timeout is not None and timeout < 0: - timeout = None - if timeout is not None: - select_args.append(timeout / 1000) - - select_events = select.select(*select_args) - poll_events = [] - for fd in select_events[0]: - poll_events.append((fd, PollConstants.POLLIN)) - return poll_events - |