create static method
Payment
create({
- required MethodChannel channel,
- required IStoneHandler paymentHandler,
- IStoneTechHandler? iStoneTechHandler,
Método factory assíncrono para criação controlada e validação da licença
Implementation
static Payment create({
required MethodChannel channel,
required IStoneHandler paymentHandler,
IStoneTechHandler? iStoneTechHandler,
}) {
// Se já existe instância e licença validada, retorna ela diretamente
if (_instance != null) {
return _instance!;
}
// Cria nova instância
final payment = Payment._(
channel: channel,
paymentHandler: paymentHandler,
);
// Salva instância e estado da licença validada
_instance = payment;
payment.channel.setMethodCallHandler((e) => IStoneHelper.callHandler(
call: e,
iStoneHandler: paymentHandler,
stoneTechHandler: iStoneTechHandler,
onTransaction: (model) => _checkPinpadActivated(model),
));
return payment;
}