blob: 98fec24d352ec2108cac8c3c4755679e10838ed9 [file] [log] [blame]
/*
*
* Copyright (c) 2011 - 2017 - Loetz GmbH & Co KG, 69115 Heidelberg, Germany
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Initial contribution:
* Loetz GmbH & Co. KG
*
*/
package org.eclipse.osbp.ui.api.pos;
import org.eclipse.osbp.ui.api.statemachine.IStateMachine;
/**
* The Interface IPOSService exposes communication link to payment terminals using ZVT protocol
*/
public interface IPOSService {
/**
* Sets the statemachine.
*
* @param statemachine the new statemachine
*/
void setStatemachine(IStateMachine statemachine);
/**
* Open ZVT channel.
*
* @param host the host
* @param port the port
* @return true, if successful
*/
boolean openZVTChannel(String host, int port);
/**
* Close ZVT channel.
*/
void closeZVTChannel();
/**
* Send Zvt registration.
*
* @param password the password
* @param configuration the configuration
*/
void zvtRegistration(String password, String configuration);
/**
* Send Zvt authorization.
*
* @param amount the amount
*/
void zvtAuthorization(Double amount);
/**
* Send Zvt acknowledge.
*/
void zvtAcknowledge();
/**
* Send Zvt reversal.
*
* @param receipt the receipt
*/
void zvtReversal(String password, String receipt);
/**
* Gets the zvt response.
*
* @return the zvt response
*/
String getZvtResponse();
/**
* Gets the zvt transactional data.
*
* @return the zvt transactional data
*/
IZVTTransactionData getZvtTransactionData();
}