Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
68 ashish 1
package in.shop2020.thrift.clients;
2
 
3
import java.util.Date;
4
import java.util.List;
5
 
6
import javax.annotation.PostConstruct;
7
import javax.annotation.PreDestroy;
8
 
9
import org.apache.thrift.transport.TTransportException;
10
 
11
import in.shop2020.model.v1.order.Billing;
12
import in.shop2020.model.v1.order.BillingInfo;
13
import in.shop2020.model.v1.order.OrderInfo;
14
import in.shop2020.model.v1.order.ShipmentInfo;
15
import in.shop2020.model.v1.order.ShipmentStatus;
16
import in.shop2020.model.v1.order.Transaction;
17
import in.shop2020.model.v1.order.TransactionStatus;
18
import in.shop2020.model.v1.order.TransactionService.Client;
19
import in.shop2020.utils.ConfigClientKeys;
20
import in.shop2020.utils.Logger;
21
 
22
public class TransactionServiceClient extends GenericServiceClient{
23
 
24
	private Client client = null;
25
 
26
	public TransactionServiceClient(String clientIdentifier,
27
			String hostConfigKey, String portConfigKey) throws Exception {
28
		super(clientIdentifier, hostConfigKey, portConfigKey);
29
		client = new Client(protocol);
30
 
31
	}
32
 
33
	public TransactionServiceClient()throws Exception{
411 rajveer 34
		this(TransactionServiceClient.class.getSimpleName(), ConfigClientKeys.transaction_service_server_host.toString(), ConfigClientKeys.transaction_service_server_port.toString());
193 ashish 35
		if(transport.isOpen()){
36
			Logger.log("Transport was already open", this);
37
		}
38
		try {
39
			transport.open();
40
		} catch (TTransportException e) {
41
			Logger.log("Encountered exception while open transport "+ e, this);
42
		}
68 ashish 43
	}
44
 
45
	@PostConstruct
46
	private void openTransport(){
47
		if(transport.isOpen()){
48
			Logger.log("Transport was already open", this);
49
		}
50
		try {
51
			transport.open();
52
		} catch (TTransportException e) {
53
			Logger.log("Encountered exception while open transport "+ e, this);
54
		}
55
	}
56
 
57
	//Api methods
58
	//TODO: Add logging to this class.
59
 
193 ashish 60
	public Client getClient(){
61
		return client;
68 ashish 62
	}
63
 
64
	@PreDestroy
65
	private void closeTransport(){
66
		if(transport != null && transport.isOpen()){
67
			Logger.log("Closing transport :", this);
68
			transport.close();
69
		}
70
	}
71
 
72
}