Skip to content

Commit 8689e8a

Browse files
committed
chapter06 Extract Surrounding Method #2
Explain Extract Surrounding Method refactor
1 parent 0efef74 commit 8689e8a

File tree

1 file changed

+13
-7
lines changed

1 file changed

+13
-7
lines changed
Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,19 @@
11
class ExtractSurroundingMethod
22
def charge(amount, credit_card_number)
3-
begin
4-
connection = CreditCardServer.connect(...)
3+
connect do |connection|
54
connection.send(amount, credit_card_number)
6-
rescue IOError => e
7-
Logger.log "Could not submit order #{@order_number} to the server: #{e}"
8-
return nil
9-
ensure
10-
connection.close
5+
end
6+
7+
def connect
8+
begin
9+
connection = CreditCardServer.connect(...)
10+
yield connection
11+
rescue IOError => e
12+
Logger.log "Could not submit order #{@order_number} to the server: #{e}"
13+
return nil
14+
ensure
15+
connection.close
16+
end
1117
end
1218
end
1319
end

0 commit comments

Comments
 (0)