[LINUX] Essayez de créer votre propre CorDapp. (Jusqu'à la création des États)

Résumé de l'article

J'ai créé ma propre CorDapp selon la documentation officielle de Corda. Dans cet article, je décrirai jusqu'à la création d'états.

Documentation officielle

https://docs.corda.net/_static/corda-developer-site.pdf (Principalement implémenté conformément au chapitre 5 «Démarrer le développement de CorDapps» et au chapitre 6 «CONCEPTS CLÉS».)

Aperçu des états

  1. Que sont les «états»? Les états sont des objets dans lesquels les «faits du grand livre» sont enregistrés. les états sont mis à jour au fur et à mesure que l'état change (le montant bouge, la propriété change, etc.). De plus, chaque nœud participant à la plate-forme Corda a ses propres états. Il dispose d'un coffre-fort pour le stockage.

  2. Séquence de mise à jour des "états" Parce que les situations "états" sont immuables (objets dont l'état ne peut pas être changé après la création) Il ne peut pas être mis à jour directement. Au lieu de cela, créez une nouvelle version d'états qui représente les nouveaux états, Marquer les états existants comme histoire. L'historique des états est accumulé dans le coffre-fort de chaque nœud.

Mise en œuvre des états

Code CorDapp selon le document officiel "5.2.2 Deuxième étape: création d'états". Au fait, le langage de programmation est Kotlin.

CarState.kt


package com.template.states
import com.template.contracts.CarContract
import com.template.contracts.TemplateContract
import net.corda.core.contracts.BelongsToContract
import net.corda.core.contracts.ContractState
import net.corda.core.contracts.UniqueIdentifier
import net.corda.core.identity.AbstractParty
import net.corda.core.identity.Party
// *********
// * State *
// *********
@BelongsToContract(CarContract::class)
data class CarState( ※1
val owningBank: Party, ※2
val holdingDealer: Party,
val manufacturer: Party,
val vin: String,
val licensePlateNumber: String,
val make: String,
val model: String,
val dealershipLocation: String,
val linearId: UniqueIdentifier ※3
) : ContractState { ※1
override val participants: List<AbstractParty> = listOf(owningBank, holdingDealer, manufacturer) ※4
}

Vous trouverez ci-dessous une note de "*" dans la source.

À la fin

La prochaine fois, je prévois de reprendre la création de contrats.

Recommended Posts

Essayez de créer votre propre CorDapp. (Jusqu'à la création des États)
Essayez d'implémenter k-NN par vous-même
Jusqu'à ce que vous hébergiez vous-même votre propre interprète
Jusqu'à ce que vous installiez votre propre bibliothèque Python
Essayez de créer votre propre AWS-SDK avec bash
Linux C / C ++ Créez votre propre environnement de création de bibliothèque
Essayez d'améliorer votre propre quiz d'introduction avec Python
Essayez de mettre des LED dans votre propre PC (légèrement)