01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one
03: * or more contributor license agreements. See the NOTICE file
04: * distributed with this work for additional information
05: * regarding copyright ownership. The ASF licenses this file
06: * to you under the Apache License, Version 2.0 (the
07: * "License"); you may not use this file except in compliance
08: * with the License. You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing,
13: * software distributed under the License is distributed on an
14: * * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15: * KIND, either express or implied. See the License for the
16: * specific language governing permissions and limitations
17: * under the License.
18: */
19: package samples.services;
20:
21: import java.util.Date;
22:
23: public class SimpleStockQuoteService {
24:
25: // in-out
26: public GetQuoteResponse getQuote(GetQuote request) {
27: System.out.println(new Date() + " " + this .getClass().getName()
28: + " :: Generating quote for : " + request.getSymbol());
29: return new GetQuoteResponse(request.getSymbol());
30: }
31:
32: // for REST style invocation
33: public GetQuoteResponse getSimpleQuote(String symbol) {
34: System.out.println(new Date() + " " + this .getClass().getName()
35: + " :: Generating quote for : " + symbol);
36: return new GetQuoteResponse(symbol);
37: }
38:
39: // in-out large response
40: public GetFullQuoteResponse getFullQuote(GetFullQuote request) {
41: System.out.println(new Date() + " " + this .getClass().getName()
42: + " :: Full quote for : " + request.getSymbol());
43: return new GetFullQuoteResponse(request.getSymbol());
44: }
45:
46: // in-out large request and response
47: public GetMarketActivityResponse getMarketActivity(
48: GetMarketActivity request) {
49: StringBuffer sb = new StringBuffer();
50: String[] symbols = request.getSymbols();
51: sb.append("[");
52: for (int i = 0; i < symbols.length; i++) {
53: sb.append(symbols[i]);
54: if (i < symbols.length - 1) {
55: sb.append(", ");
56: }
57: }
58: sb.append("]");
59: System.out.println(new Date() + " " + this .getClass().getName()
60: + " :: Generating Market activity report for : "
61: + sb.toString());
62: return new GetMarketActivityResponse(request.getSymbols());
63: }
64:
65: // in only
66: public void placeOrder(PlaceOrder order) {
67: System.out.println(new Date() + " " + this .getClass().getName()
68: + " :: Accepted order for : " + order.getQuantity()
69: + " stocks of " + order.getSymbol() + " at $ "
70: + order.getPrice());
71: }
72: }
|