You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.0 KiB

package controllers
import javax.inject.Inject
import com.alexitc.playsonify.models.PublicContextWithModel
import com.xsn.explorer.models.request.{GetLatestTransactionRequest, SendRawTransactionRequest}
import com.xsn.explorer.services.TransactionService
import controllers.common.{MyJsonController, MyJsonControllerComponents}
class TransactionsController @Inject() (
transactionService: TransactionService,
cc: MyJsonControllerComponents)
extends MyJsonController(cc) {
def getTransaction(txid: String) = publicNoInput { _ =>
transactionService.getTransactionDetails(txid)
}
def getRawTransaction(txid: String) = publicNoInput { _ =>
transactionService.getRawTransaction(txid)
}
def sendRawTransaction() = publicWithInput { ctx: PublicContextWithModel[SendRawTransactionRequest] =>
transactionService.sendRawTransaction(ctx.model.hex)
}
def getLatestByAddresses() = publicWithInput { ctx: PublicContextWithModel[GetLatestTransactionRequest] =>
transactionService.getLatestTransactionBy(ctx.model.addresses)
}
}