@@ -15,18 +15,22 @@ import (
1515
1616var ErrorFarmNotFound = fmt .Errorf ("failed to get requested farm from node registrar" )
1717
18+ // CreateFarm create new farm on the registrar with uniqe name.
1819func (c * RegistrarClient ) CreateFarm (farmName , stellarAddr string , dedicated bool ) (farmID uint64 , err error ) {
1920 return c .createFarm (farmName , stellarAddr , dedicated )
2021}
2122
23+ // UpdateFarm update farm configuration (farmName, stellarAddress, dedicated).
2224func (c * RegistrarClient ) UpdateFarm (farmID uint64 , opts ... UpdateFarmOpts ) (err error ) {
2325 return c .updateFarm (farmID , opts )
2426}
2527
26- func (c * RegistrarClient ) GetFarm (id uint64 ) (farm Farm , err error ) {
27- return c .getFarm (id )
28+ // GetFarm get a farm using its farmID
29+ func (c * RegistrarClient ) GetFarm (farmID uint64 ) (farm Farm , err error ) {
30+ return c .getFarm (farmID )
2831}
2932
33+ // ListFarms get a list of farm using ListFarmOpts
3034func (c * RegistrarClient ) ListFarms (opts ... ListFarmOpts ) (farms []Farm , err error ) {
3135 return c .listFarms (opts ... )
3236}
@@ -46,48 +50,56 @@ type (
4650 UpdateFarmOpts func (* farmCfg )
4751)
4852
53+ // ListFarmWithName lists farms with farm name
4954func ListFarmWithName (name string ) ListFarmOpts {
5055 return func (n * farmCfg ) {
5156 n .farmName = name
5257 }
5358}
5459
60+ // ListFarmWithFarmID lists farms with farmID
5561func ListFarmWithFarmID (id uint64 ) ListFarmOpts {
5662 return func (n * farmCfg ) {
5763 n .farmID = id
5864 }
5965}
6066
67+ // ListFarmWithTwinID lists farms with twinID
6168func ListFarmWithTwinID (id uint64 ) ListFarmOpts {
6269 return func (n * farmCfg ) {
6370 n .twinID = id
6471 }
6572}
6673
74+ // ListFarmWithDedicated lists dedicated farms
6775func ListFarmWithDedicated () ListFarmOpts {
6876 return func (n * farmCfg ) {
6977 n .dedicated = true
7078 }
7179}
7280
81+ // ListFarmWithPage lists farms in a certain page
7382func ListFarmWithPage (page uint32 ) ListFarmOpts {
7483 return func (n * farmCfg ) {
7584 n .page = page
7685 }
7786}
7887
88+ // ListFarmWithPage lists size number of farms
7989func ListFarmWithSize (size uint32 ) ListFarmOpts {
8090 return func (n * farmCfg ) {
8191 n .size = size
8292 }
8393}
8494
95+ // UpdateFarmWithName update farm name
8596func UpdateFarmWithName (name string ) UpdateFarmOpts {
8697 return func (n * farmCfg ) {
8798 n .farmName = name
8899 }
89100}
90101
102+ // UpdateFarmWithName set farm status to dedicated
91103func UpdateFarmWithDedicated () UpdateFarmOpts {
92104 return func (n * farmCfg ) {
93105 n .dedicated = true
@@ -331,6 +343,7 @@ func parseUpdateFarmOpts(opts []UpdateFarmOpts) map[string]any {
331343 return data
332344}
333345
346+ // validateStellarAddress ensures that the address is valid stellar address
334347func validateStellarAddress (stellarAddr string ) error {
335348 stellarAddr = strings .TrimSpace (stellarAddr )
336349 if len (stellarAddr ) != 56 {
0 commit comments