The Trunk: Network-nice.237.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Network-nice.237.mcz

commits-2
Nicolas Cellier uploaded a new version of Network to project The Trunk:
http://source.squeak.org/trunk/Network-nice.237.mcz

==================== Summary ====================

Name: Network-nice.237
Author: nice
Time: 17 November 2019, 4:42:30.116383 pm
UUID: 5ea94de6-4e06-4dd0-b3af-d52548545d65
Ancestors: Network-mt.236

Use substrings and lines idiom instead of findTokens:

Note: findTokens: feeded with a CharacterSet (CharacterSet separators or CharacterSet crlf) would be equally efficient as above specialized selectors, just a bit longer to write.

=============== Diff against Network-mt.236 ===============

Item was changed:
  ----- Method: HTTPServerDirectory>>entries (in category 'file directory') -----
  entries
  | answer ftpEntries |
  answer := HTTPSocket httpGetDocument: self dirListUrl.
  answer isString
  ifTrue: [^self error: 'Listing failed: ' , answer]
  ifFalse: [answer := answer content].
+ answer first = $<
- answer first == $<
  ifTrue: [self error: 'Listing failed: ' , answer].
+ ftpEntries := answer lines.
- ftpEntries := answer findTokens: String crlf.
  ^ ftpEntries
  collect:[:ftpEntry | self class parseFTPEntry: ftpEntry]
  thenSelect: [:entry | entry notNil]!

Item was changed:
  ----- Method: POP3Client>>messageCount (in category 'public protocol') -----
  messageCount
  "Query the server and answer the number of messages that are in the user's mailbox."
 
  | numMessages |
  self ensureConnection.
  self sendCommand: 'STAT'.
  self checkResponse.
  self logProgress: self lastResponse.
 
  [ | answerString |
+ answerString := (self lastResponse substrings) second.
- answerString := (self lastResponse findTokens: Character separators) second.
  numMessages := answerString asNumber asInteger]
  on: Error
  do: [:ex | (ProtocolClientError protocolInstance: self) signal: 'Invalid STAT response.'].
  ^numMessages!

Item was changed:
  ----- Method: ServerDirectory>>entries (in category 'file directory') -----
  entries
  "Return a collection of directory entries for the files and directories in this directory. Each entry is a five-element array: (<name> <creationTime> <modificationTime> <dirFlag> <fileSize>)."
  | dir ftpEntries |
  "We start with ftp directory entries of the form...
  d---------   1 owner    group               0 Apr 27 22:01 blasttest
  ----------   1 owner    group           93812 Jul 21  1997 COMMAND.COM
      1        2   3           4                 5    6  7    8       9   -- token index"
  self isTypeFile ifTrue: [
  urlObject isAbsolute ifFalse: [urlObject default].
  ^ (FileDirectory on: urlObject pathForDirectory) entries
  ].
 
  dir := self getDirectory.
  (dir respondsTo: #contentsOfEntireFile) ifFalse: [^ #()].
+ ftpEntries := dir contentsOfEntireFile lines.
- ftpEntries := dir contentsOfEntireFile findTokens: String crlf.
- "ftpEntries inspect."
  ^ ftpEntries
  collect:[:ftpEntry | self class parseFTPEntry: ftpEntry]
  thenSelect: [:entry | entry notNil]!