zz_store.go raw

   1  // Copyright 2022-2025 The sacloud/iaas-api-go Authors
   2  //
   3  // Licensed under the Apache License, Version 2.0 (the "License");
   4  // you may not use this file except in compliance with the License.
   5  // You may obtain a copy of the License at
   6  //
   7  //      http://www.apache.org/licenses/LICENSE-2.0
   8  //
   9  // Unless required by applicable law or agreed to in writing, software
  10  // distributed under the License is distributed on an "AS IS" BASIS,
  11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12  // See the License for the specific language governing permissions and
  13  // limitations under the License.
  14  
  15  // generated by 'github.com/sacloud/iaas-api-go/internal/tools/gen-fake-store'; DO NOT EDIT
  16  
  17  package fake
  18  
  19  import (
  20  	"github.com/sacloud/iaas-api-go"
  21  	"github.com/sacloud/iaas-api-go/accessor"
  22  	"github.com/sacloud/iaas-api-go/types"
  23  )
  24  
  25  func getArchive(zone string) []*iaas.Archive {
  26  	values := ds().List(ResourceArchive, zone)
  27  	var ret []*iaas.Archive
  28  	for _, v := range values {
  29  		if v, ok := v.(*iaas.Archive); ok {
  30  			ret = append(ret, v)
  31  		}
  32  	}
  33  	return ret
  34  }
  35  
  36  func getArchiveByID(zone string, id types.ID) *iaas.Archive {
  37  	v := ds().Get(ResourceArchive, zone, id)
  38  	if v, ok := v.(*iaas.Archive); ok {
  39  		return v
  40  	}
  41  	return nil
  42  }
  43  
  44  func putArchive(zone string, value *iaas.Archive) {
  45  	var v interface{} = value
  46  	if id, ok := v.(accessor.ID); ok {
  47  		ds().Put(ResourceArchive, zone, id.GetID(), value)
  48  		return
  49  	}
  50  	ds().Put(ResourceArchive, zone, 0, value)
  51  }
  52  
  53  func getAuthStatus(zone string) []*iaas.AuthStatus {
  54  	values := ds().List(ResourceAuthStatus, zone)
  55  	var ret []*iaas.AuthStatus
  56  	for _, v := range values {
  57  		if v, ok := v.(*iaas.AuthStatus); ok {
  58  			ret = append(ret, v)
  59  		}
  60  	}
  61  	return ret
  62  }
  63  
  64  func getAuthStatusByID(zone string, id types.ID) *iaas.AuthStatus {
  65  	v := ds().Get(ResourceAuthStatus, zone, id)
  66  	if v, ok := v.(*iaas.AuthStatus); ok {
  67  		return v
  68  	}
  69  	return nil
  70  }
  71  
  72  func putAuthStatus(zone string, value *iaas.AuthStatus) {
  73  	var v interface{} = value
  74  	if id, ok := v.(accessor.ID); ok {
  75  		ds().Put(ResourceAuthStatus, zone, id.GetID(), value)
  76  		return
  77  	}
  78  	ds().Put(ResourceAuthStatus, zone, 0, value)
  79  }
  80  
  81  func getAutoBackup(zone string) []*iaas.AutoBackup {
  82  	values := ds().List(ResourceAutoBackup, zone)
  83  	var ret []*iaas.AutoBackup
  84  	for _, v := range values {
  85  		if v, ok := v.(*iaas.AutoBackup); ok {
  86  			ret = append(ret, v)
  87  		}
  88  	}
  89  	return ret
  90  }
  91  
  92  func getAutoBackupByID(zone string, id types.ID) *iaas.AutoBackup {
  93  	v := ds().Get(ResourceAutoBackup, zone, id)
  94  	if v, ok := v.(*iaas.AutoBackup); ok {
  95  		return v
  96  	}
  97  	return nil
  98  }
  99  
 100  func putAutoBackup(zone string, value *iaas.AutoBackup) {
 101  	var v interface{} = value
 102  	if id, ok := v.(accessor.ID); ok {
 103  		ds().Put(ResourceAutoBackup, zone, id.GetID(), value)
 104  		return
 105  	}
 106  	ds().Put(ResourceAutoBackup, zone, 0, value)
 107  }
 108  
 109  func getAutoScale(zone string) []*iaas.AutoScale {
 110  	values := ds().List(ResourceAutoScale, zone)
 111  	var ret []*iaas.AutoScale
 112  	for _, v := range values {
 113  		if v, ok := v.(*iaas.AutoScale); ok {
 114  			ret = append(ret, v)
 115  		}
 116  	}
 117  	return ret
 118  }
 119  
 120  func getAutoScaleByID(zone string, id types.ID) *iaas.AutoScale {
 121  	v := ds().Get(ResourceAutoScale, zone, id)
 122  	if v, ok := v.(*iaas.AutoScale); ok {
 123  		return v
 124  	}
 125  	return nil
 126  }
 127  
 128  func putAutoScale(zone string, value *iaas.AutoScale) {
 129  	var v interface{} = value
 130  	if id, ok := v.(accessor.ID); ok {
 131  		ds().Put(ResourceAutoScale, zone, id.GetID(), value)
 132  		return
 133  	}
 134  	ds().Put(ResourceAutoScale, zone, 0, value)
 135  }
 136  
 137  func getBill(zone string) []*iaas.Bill {
 138  	values := ds().List(ResourceBill, zone)
 139  	var ret []*iaas.Bill
 140  	for _, v := range values {
 141  		if v, ok := v.(*iaas.Bill); ok {
 142  			ret = append(ret, v)
 143  		}
 144  	}
 145  	return ret
 146  }
 147  
 148  func getBillByID(zone string, id types.ID) *iaas.Bill {
 149  	v := ds().Get(ResourceBill, zone, id)
 150  	if v, ok := v.(*iaas.Bill); ok {
 151  		return v
 152  	}
 153  	return nil
 154  }
 155  
 156  func putBill(zone string, value *iaas.Bill) {
 157  	var v interface{} = value
 158  	if id, ok := v.(accessor.ID); ok {
 159  		ds().Put(ResourceBill, zone, id.GetID(), value)
 160  		return
 161  	}
 162  	ds().Put(ResourceBill, zone, 0, value)
 163  }
 164  
 165  func getBridge(zone string) []*iaas.Bridge {
 166  	values := ds().List(ResourceBridge, zone)
 167  	var ret []*iaas.Bridge
 168  	for _, v := range values {
 169  		if v, ok := v.(*iaas.Bridge); ok {
 170  			ret = append(ret, v)
 171  		}
 172  	}
 173  	return ret
 174  }
 175  
 176  func getBridgeByID(zone string, id types.ID) *iaas.Bridge {
 177  	v := ds().Get(ResourceBridge, zone, id)
 178  	if v, ok := v.(*iaas.Bridge); ok {
 179  		return v
 180  	}
 181  	return nil
 182  }
 183  
 184  func putBridge(zone string, value *iaas.Bridge) {
 185  	var v interface{} = value
 186  	if id, ok := v.(accessor.ID); ok {
 187  		ds().Put(ResourceBridge, zone, id.GetID(), value)
 188  		return
 189  	}
 190  	ds().Put(ResourceBridge, zone, 0, value)
 191  }
 192  
 193  func getCDROM(zone string) []*iaas.CDROM {
 194  	values := ds().List(ResourceCDROM, zone)
 195  	var ret []*iaas.CDROM
 196  	for _, v := range values {
 197  		if v, ok := v.(*iaas.CDROM); ok {
 198  			ret = append(ret, v)
 199  		}
 200  	}
 201  	return ret
 202  }
 203  
 204  func getCDROMByID(zone string, id types.ID) *iaas.CDROM {
 205  	v := ds().Get(ResourceCDROM, zone, id)
 206  	if v, ok := v.(*iaas.CDROM); ok {
 207  		return v
 208  	}
 209  	return nil
 210  }
 211  
 212  func putCDROM(zone string, value *iaas.CDROM) {
 213  	var v interface{} = value
 214  	if id, ok := v.(accessor.ID); ok {
 215  		ds().Put(ResourceCDROM, zone, id.GetID(), value)
 216  		return
 217  	}
 218  	ds().Put(ResourceCDROM, zone, 0, value)
 219  }
 220  
 221  func getCertificateAuthority(zone string) []*iaas.CertificateAuthority {
 222  	values := ds().List(ResourceCertificateAuthority, zone)
 223  	var ret []*iaas.CertificateAuthority
 224  	for _, v := range values {
 225  		if v, ok := v.(*iaas.CertificateAuthority); ok {
 226  			ret = append(ret, v)
 227  		}
 228  	}
 229  	return ret
 230  }
 231  
 232  func getCertificateAuthorityByID(zone string, id types.ID) *iaas.CertificateAuthority {
 233  	v := ds().Get(ResourceCertificateAuthority, zone, id)
 234  	if v, ok := v.(*iaas.CertificateAuthority); ok {
 235  		return v
 236  	}
 237  	return nil
 238  }
 239  
 240  func putCertificateAuthority(zone string, value *iaas.CertificateAuthority) {
 241  	var v interface{} = value
 242  	if id, ok := v.(accessor.ID); ok {
 243  		ds().Put(ResourceCertificateAuthority, zone, id.GetID(), value)
 244  		return
 245  	}
 246  	ds().Put(ResourceCertificateAuthority, zone, 0, value)
 247  }
 248  
 249  func getContainerRegistry(zone string) []*iaas.ContainerRegistry {
 250  	values := ds().List(ResourceContainerRegistry, zone)
 251  	var ret []*iaas.ContainerRegistry
 252  	for _, v := range values {
 253  		if v, ok := v.(*iaas.ContainerRegistry); ok {
 254  			ret = append(ret, v)
 255  		}
 256  	}
 257  	return ret
 258  }
 259  
 260  func getContainerRegistryByID(zone string, id types.ID) *iaas.ContainerRegistry {
 261  	v := ds().Get(ResourceContainerRegistry, zone, id)
 262  	if v, ok := v.(*iaas.ContainerRegistry); ok {
 263  		return v
 264  	}
 265  	return nil
 266  }
 267  
 268  func putContainerRegistry(zone string, value *iaas.ContainerRegistry) {
 269  	var v interface{} = value
 270  	if id, ok := v.(accessor.ID); ok {
 271  		ds().Put(ResourceContainerRegistry, zone, id.GetID(), value)
 272  		return
 273  	}
 274  	ds().Put(ResourceContainerRegistry, zone, 0, value)
 275  }
 276  
 277  func getCoupon(zone string) []*iaas.Coupon {
 278  	values := ds().List(ResourceCoupon, zone)
 279  	var ret []*iaas.Coupon
 280  	for _, v := range values {
 281  		if v, ok := v.(*iaas.Coupon); ok {
 282  			ret = append(ret, v)
 283  		}
 284  	}
 285  	return ret
 286  }
 287  
 288  func getCouponByID(zone string, id types.ID) *iaas.Coupon {
 289  	v := ds().Get(ResourceCoupon, zone, id)
 290  	if v, ok := v.(*iaas.Coupon); ok {
 291  		return v
 292  	}
 293  	return nil
 294  }
 295  
 296  func putCoupon(zone string, value *iaas.Coupon) {
 297  	var v interface{} = value
 298  	if id, ok := v.(accessor.ID); ok {
 299  		ds().Put(ResourceCoupon, zone, id.GetID(), value)
 300  		return
 301  	}
 302  	ds().Put(ResourceCoupon, zone, 0, value)
 303  }
 304  
 305  func getDatabase(zone string) []*iaas.Database {
 306  	values := ds().List(ResourceDatabase, zone)
 307  	var ret []*iaas.Database
 308  	for _, v := range values {
 309  		if v, ok := v.(*iaas.Database); ok {
 310  			ret = append(ret, v)
 311  		}
 312  	}
 313  	return ret
 314  }
 315  
 316  func getDatabaseByID(zone string, id types.ID) *iaas.Database {
 317  	v := ds().Get(ResourceDatabase, zone, id)
 318  	if v, ok := v.(*iaas.Database); ok {
 319  		return v
 320  	}
 321  	return nil
 322  }
 323  
 324  func putDatabase(zone string, value *iaas.Database) {
 325  	var v interface{} = value
 326  	if id, ok := v.(accessor.ID); ok {
 327  		ds().Put(ResourceDatabase, zone, id.GetID(), value)
 328  		return
 329  	}
 330  	ds().Put(ResourceDatabase, zone, 0, value)
 331  }
 332  
 333  func getDisk(zone string) []*iaas.Disk {
 334  	values := ds().List(ResourceDisk, zone)
 335  	var ret []*iaas.Disk
 336  	for _, v := range values {
 337  		if v, ok := v.(*iaas.Disk); ok {
 338  			ret = append(ret, v)
 339  		}
 340  	}
 341  	return ret
 342  }
 343  
 344  func getDiskByID(zone string, id types.ID) *iaas.Disk {
 345  	v := ds().Get(ResourceDisk, zone, id)
 346  	if v, ok := v.(*iaas.Disk); ok {
 347  		return v
 348  	}
 349  	return nil
 350  }
 351  
 352  func putDisk(zone string, value *iaas.Disk) {
 353  	var v interface{} = value
 354  	if id, ok := v.(accessor.ID); ok {
 355  		ds().Put(ResourceDisk, zone, id.GetID(), value)
 356  		return
 357  	}
 358  	ds().Put(ResourceDisk, zone, 0, value)
 359  }
 360  
 361  func getDiskPlan(zone string) []*iaas.DiskPlan {
 362  	values := ds().List(ResourceDiskPlan, zone)
 363  	var ret []*iaas.DiskPlan
 364  	for _, v := range values {
 365  		if v, ok := v.(*iaas.DiskPlan); ok {
 366  			ret = append(ret, v)
 367  		}
 368  	}
 369  	return ret
 370  }
 371  
 372  func getDiskPlanByID(zone string, id types.ID) *iaas.DiskPlan {
 373  	v := ds().Get(ResourceDiskPlan, zone, id)
 374  	if v, ok := v.(*iaas.DiskPlan); ok {
 375  		return v
 376  	}
 377  	return nil
 378  }
 379  
 380  func putDiskPlan(zone string, value *iaas.DiskPlan) {
 381  	var v interface{} = value
 382  	if id, ok := v.(accessor.ID); ok {
 383  		ds().Put(ResourceDiskPlan, zone, id.GetID(), value)
 384  		return
 385  	}
 386  	ds().Put(ResourceDiskPlan, zone, 0, value)
 387  }
 388  
 389  func getDNS(zone string) []*iaas.DNS {
 390  	values := ds().List(ResourceDNS, zone)
 391  	var ret []*iaas.DNS
 392  	for _, v := range values {
 393  		if v, ok := v.(*iaas.DNS); ok {
 394  			ret = append(ret, v)
 395  		}
 396  	}
 397  	return ret
 398  }
 399  
 400  func getDNSByID(zone string, id types.ID) *iaas.DNS {
 401  	v := ds().Get(ResourceDNS, zone, id)
 402  	if v, ok := v.(*iaas.DNS); ok {
 403  		return v
 404  	}
 405  	return nil
 406  }
 407  
 408  func putDNS(zone string, value *iaas.DNS) {
 409  	var v interface{} = value
 410  	if id, ok := v.(accessor.ID); ok {
 411  		ds().Put(ResourceDNS, zone, id.GetID(), value)
 412  		return
 413  	}
 414  	ds().Put(ResourceDNS, zone, 0, value)
 415  }
 416  
 417  func getEnhancedDB(zone string) []*iaas.EnhancedDB {
 418  	values := ds().List(ResourceEnhancedDB, zone)
 419  	var ret []*iaas.EnhancedDB
 420  	for _, v := range values {
 421  		if v, ok := v.(*iaas.EnhancedDB); ok {
 422  			ret = append(ret, v)
 423  		}
 424  	}
 425  	return ret
 426  }
 427  
 428  func getEnhancedDBByID(zone string, id types.ID) *iaas.EnhancedDB {
 429  	v := ds().Get(ResourceEnhancedDB, zone, id)
 430  	if v, ok := v.(*iaas.EnhancedDB); ok {
 431  		return v
 432  	}
 433  	return nil
 434  }
 435  
 436  func putEnhancedDB(zone string, value *iaas.EnhancedDB) {
 437  	var v interface{} = value
 438  	if id, ok := v.(accessor.ID); ok {
 439  		ds().Put(ResourceEnhancedDB, zone, id.GetID(), value)
 440  		return
 441  	}
 442  	ds().Put(ResourceEnhancedDB, zone, 0, value)
 443  }
 444  
 445  func getESME(zone string) []*iaas.ESME {
 446  	values := ds().List(ResourceESME, zone)
 447  	var ret []*iaas.ESME
 448  	for _, v := range values {
 449  		if v, ok := v.(*iaas.ESME); ok {
 450  			ret = append(ret, v)
 451  		}
 452  	}
 453  	return ret
 454  }
 455  
 456  func getESMEByID(zone string, id types.ID) *iaas.ESME {
 457  	v := ds().Get(ResourceESME, zone, id)
 458  	if v, ok := v.(*iaas.ESME); ok {
 459  		return v
 460  	}
 461  	return nil
 462  }
 463  
 464  func putESME(zone string, value *iaas.ESME) {
 465  	var v interface{} = value
 466  	if id, ok := v.(accessor.ID); ok {
 467  		ds().Put(ResourceESME, zone, id.GetID(), value)
 468  		return
 469  	}
 470  	ds().Put(ResourceESME, zone, 0, value)
 471  }
 472  
 473  func getGSLB(zone string) []*iaas.GSLB {
 474  	values := ds().List(ResourceGSLB, zone)
 475  	var ret []*iaas.GSLB
 476  	for _, v := range values {
 477  		if v, ok := v.(*iaas.GSLB); ok {
 478  			ret = append(ret, v)
 479  		}
 480  	}
 481  	return ret
 482  }
 483  
 484  func getGSLBByID(zone string, id types.ID) *iaas.GSLB {
 485  	v := ds().Get(ResourceGSLB, zone, id)
 486  	if v, ok := v.(*iaas.GSLB); ok {
 487  		return v
 488  	}
 489  	return nil
 490  }
 491  
 492  func putGSLB(zone string, value *iaas.GSLB) {
 493  	var v interface{} = value
 494  	if id, ok := v.(accessor.ID); ok {
 495  		ds().Put(ResourceGSLB, zone, id.GetID(), value)
 496  		return
 497  	}
 498  	ds().Put(ResourceGSLB, zone, 0, value)
 499  }
 500  
 501  func getIcon(zone string) []*iaas.Icon {
 502  	values := ds().List(ResourceIcon, zone)
 503  	var ret []*iaas.Icon
 504  	for _, v := range values {
 505  		if v, ok := v.(*iaas.Icon); ok {
 506  			ret = append(ret, v)
 507  		}
 508  	}
 509  	return ret
 510  }
 511  
 512  func getIconByID(zone string, id types.ID) *iaas.Icon {
 513  	v := ds().Get(ResourceIcon, zone, id)
 514  	if v, ok := v.(*iaas.Icon); ok {
 515  		return v
 516  	}
 517  	return nil
 518  }
 519  
 520  func putIcon(zone string, value *iaas.Icon) {
 521  	var v interface{} = value
 522  	if id, ok := v.(accessor.ID); ok {
 523  		ds().Put(ResourceIcon, zone, id.GetID(), value)
 524  		return
 525  	}
 526  	ds().Put(ResourceIcon, zone, 0, value)
 527  }
 528  
 529  func getInterface(zone string) []*iaas.Interface {
 530  	values := ds().List(ResourceInterface, zone)
 531  	var ret []*iaas.Interface
 532  	for _, v := range values {
 533  		if v, ok := v.(*iaas.Interface); ok {
 534  			ret = append(ret, v)
 535  		}
 536  	}
 537  	return ret
 538  }
 539  
 540  func getInterfaceByID(zone string, id types.ID) *iaas.Interface {
 541  	v := ds().Get(ResourceInterface, zone, id)
 542  	if v, ok := v.(*iaas.Interface); ok {
 543  		return v
 544  	}
 545  	return nil
 546  }
 547  
 548  func putInterface(zone string, value *iaas.Interface) {
 549  	var v interface{} = value
 550  	if id, ok := v.(accessor.ID); ok {
 551  		ds().Put(ResourceInterface, zone, id.GetID(), value)
 552  		return
 553  	}
 554  	ds().Put(ResourceInterface, zone, 0, value)
 555  }
 556  
 557  func getInternet(zone string) []*iaas.Internet {
 558  	values := ds().List(ResourceInternet, zone)
 559  	var ret []*iaas.Internet
 560  	for _, v := range values {
 561  		if v, ok := v.(*iaas.Internet); ok {
 562  			ret = append(ret, v)
 563  		}
 564  	}
 565  	return ret
 566  }
 567  
 568  func getInternetByID(zone string, id types.ID) *iaas.Internet {
 569  	v := ds().Get(ResourceInternet, zone, id)
 570  	if v, ok := v.(*iaas.Internet); ok {
 571  		return v
 572  	}
 573  	return nil
 574  }
 575  
 576  func putInternet(zone string, value *iaas.Internet) {
 577  	var v interface{} = value
 578  	if id, ok := v.(accessor.ID); ok {
 579  		ds().Put(ResourceInternet, zone, id.GetID(), value)
 580  		return
 581  	}
 582  	ds().Put(ResourceInternet, zone, 0, value)
 583  }
 584  
 585  func getInternetPlan(zone string) []*iaas.InternetPlan {
 586  	values := ds().List(ResourceInternetPlan, zone)
 587  	var ret []*iaas.InternetPlan
 588  	for _, v := range values {
 589  		if v, ok := v.(*iaas.InternetPlan); ok {
 590  			ret = append(ret, v)
 591  		}
 592  	}
 593  	return ret
 594  }
 595  
 596  func getInternetPlanByID(zone string, id types.ID) *iaas.InternetPlan {
 597  	v := ds().Get(ResourceInternetPlan, zone, id)
 598  	if v, ok := v.(*iaas.InternetPlan); ok {
 599  		return v
 600  	}
 601  	return nil
 602  }
 603  
 604  func putInternetPlan(zone string, value *iaas.InternetPlan) {
 605  	var v interface{} = value
 606  	if id, ok := v.(accessor.ID); ok {
 607  		ds().Put(ResourceInternetPlan, zone, id.GetID(), value)
 608  		return
 609  	}
 610  	ds().Put(ResourceInternetPlan, zone, 0, value)
 611  }
 612  
 613  func getIPAddress(zone string) []*iaas.IPAddress {
 614  	values := ds().List(ResourceIPAddress, zone)
 615  	var ret []*iaas.IPAddress
 616  	for _, v := range values {
 617  		if v, ok := v.(*iaas.IPAddress); ok {
 618  			ret = append(ret, v)
 619  		}
 620  	}
 621  	return ret
 622  }
 623  
 624  func getIPAddressByID(zone string, id types.ID) *iaas.IPAddress {
 625  	v := ds().Get(ResourceIPAddress, zone, id)
 626  	if v, ok := v.(*iaas.IPAddress); ok {
 627  		return v
 628  	}
 629  	return nil
 630  }
 631  
 632  func putIPAddress(zone string, value *iaas.IPAddress) {
 633  	var v interface{} = value
 634  	if id, ok := v.(accessor.ID); ok {
 635  		ds().Put(ResourceIPAddress, zone, id.GetID(), value)
 636  		return
 637  	}
 638  	ds().Put(ResourceIPAddress, zone, 0, value)
 639  }
 640  
 641  func getIPv6Net(zone string) []*iaas.IPv6Net {
 642  	values := ds().List(ResourceIPv6Net, zone)
 643  	var ret []*iaas.IPv6Net
 644  	for _, v := range values {
 645  		if v, ok := v.(*iaas.IPv6Net); ok {
 646  			ret = append(ret, v)
 647  		}
 648  	}
 649  	return ret
 650  }
 651  
 652  func getIPv6NetByID(zone string, id types.ID) *iaas.IPv6Net {
 653  	v := ds().Get(ResourceIPv6Net, zone, id)
 654  	if v, ok := v.(*iaas.IPv6Net); ok {
 655  		return v
 656  	}
 657  	return nil
 658  }
 659  
 660  func putIPv6Net(zone string, value *iaas.IPv6Net) {
 661  	var v interface{} = value
 662  	if id, ok := v.(accessor.ID); ok {
 663  		ds().Put(ResourceIPv6Net, zone, id.GetID(), value)
 664  		return
 665  	}
 666  	ds().Put(ResourceIPv6Net, zone, 0, value)
 667  }
 668  
 669  func getIPv6Addr(zone string) []*iaas.IPv6Addr {
 670  	values := ds().List(ResourceIPv6Addr, zone)
 671  	var ret []*iaas.IPv6Addr
 672  	for _, v := range values {
 673  		if v, ok := v.(*iaas.IPv6Addr); ok {
 674  			ret = append(ret, v)
 675  		}
 676  	}
 677  	return ret
 678  }
 679  
 680  func getIPv6AddrByID(zone string, id types.ID) *iaas.IPv6Addr {
 681  	v := ds().Get(ResourceIPv6Addr, zone, id)
 682  	if v, ok := v.(*iaas.IPv6Addr); ok {
 683  		return v
 684  	}
 685  	return nil
 686  }
 687  
 688  func putIPv6Addr(zone string, value *iaas.IPv6Addr) {
 689  	var v interface{} = value
 690  	if id, ok := v.(accessor.ID); ok {
 691  		ds().Put(ResourceIPv6Addr, zone, id.GetID(), value)
 692  		return
 693  	}
 694  	ds().Put(ResourceIPv6Addr, zone, 0, value)
 695  }
 696  
 697  func getLicense(zone string) []*iaas.License {
 698  	values := ds().List(ResourceLicense, zone)
 699  	var ret []*iaas.License
 700  	for _, v := range values {
 701  		if v, ok := v.(*iaas.License); ok {
 702  			ret = append(ret, v)
 703  		}
 704  	}
 705  	return ret
 706  }
 707  
 708  func getLicenseByID(zone string, id types.ID) *iaas.License {
 709  	v := ds().Get(ResourceLicense, zone, id)
 710  	if v, ok := v.(*iaas.License); ok {
 711  		return v
 712  	}
 713  	return nil
 714  }
 715  
 716  func putLicense(zone string, value *iaas.License) {
 717  	var v interface{} = value
 718  	if id, ok := v.(accessor.ID); ok {
 719  		ds().Put(ResourceLicense, zone, id.GetID(), value)
 720  		return
 721  	}
 722  	ds().Put(ResourceLicense, zone, 0, value)
 723  }
 724  
 725  func getLicenseInfo(zone string) []*iaas.LicenseInfo {
 726  	values := ds().List(ResourceLicenseInfo, zone)
 727  	var ret []*iaas.LicenseInfo
 728  	for _, v := range values {
 729  		if v, ok := v.(*iaas.LicenseInfo); ok {
 730  			ret = append(ret, v)
 731  		}
 732  	}
 733  	return ret
 734  }
 735  
 736  func getLicenseInfoByID(zone string, id types.ID) *iaas.LicenseInfo {
 737  	v := ds().Get(ResourceLicenseInfo, zone, id)
 738  	if v, ok := v.(*iaas.LicenseInfo); ok {
 739  		return v
 740  	}
 741  	return nil
 742  }
 743  
 744  func putLicenseInfo(zone string, value *iaas.LicenseInfo) {
 745  	var v interface{} = value
 746  	if id, ok := v.(accessor.ID); ok {
 747  		ds().Put(ResourceLicenseInfo, zone, id.GetID(), value)
 748  		return
 749  	}
 750  	ds().Put(ResourceLicenseInfo, zone, 0, value)
 751  }
 752  
 753  func getLoadBalancer(zone string) []*iaas.LoadBalancer {
 754  	values := ds().List(ResourceLoadBalancer, zone)
 755  	var ret []*iaas.LoadBalancer
 756  	for _, v := range values {
 757  		if v, ok := v.(*iaas.LoadBalancer); ok {
 758  			ret = append(ret, v)
 759  		}
 760  	}
 761  	return ret
 762  }
 763  
 764  func getLoadBalancerByID(zone string, id types.ID) *iaas.LoadBalancer {
 765  	v := ds().Get(ResourceLoadBalancer, zone, id)
 766  	if v, ok := v.(*iaas.LoadBalancer); ok {
 767  		return v
 768  	}
 769  	return nil
 770  }
 771  
 772  func putLoadBalancer(zone string, value *iaas.LoadBalancer) {
 773  	var v interface{} = value
 774  	if id, ok := v.(accessor.ID); ok {
 775  		ds().Put(ResourceLoadBalancer, zone, id.GetID(), value)
 776  		return
 777  	}
 778  	ds().Put(ResourceLoadBalancer, zone, 0, value)
 779  }
 780  
 781  func getLocalRouter(zone string) []*iaas.LocalRouter {
 782  	values := ds().List(ResourceLocalRouter, zone)
 783  	var ret []*iaas.LocalRouter
 784  	for _, v := range values {
 785  		if v, ok := v.(*iaas.LocalRouter); ok {
 786  			ret = append(ret, v)
 787  		}
 788  	}
 789  	return ret
 790  }
 791  
 792  func getLocalRouterByID(zone string, id types.ID) *iaas.LocalRouter {
 793  	v := ds().Get(ResourceLocalRouter, zone, id)
 794  	if v, ok := v.(*iaas.LocalRouter); ok {
 795  		return v
 796  	}
 797  	return nil
 798  }
 799  
 800  func putLocalRouter(zone string, value *iaas.LocalRouter) {
 801  	var v interface{} = value
 802  	if id, ok := v.(accessor.ID); ok {
 803  		ds().Put(ResourceLocalRouter, zone, id.GetID(), value)
 804  		return
 805  	}
 806  	ds().Put(ResourceLocalRouter, zone, 0, value)
 807  }
 808  
 809  func getMobileGateway(zone string) []*iaas.MobileGateway {
 810  	values := ds().List(ResourceMobileGateway, zone)
 811  	var ret []*iaas.MobileGateway
 812  	for _, v := range values {
 813  		if v, ok := v.(*iaas.MobileGateway); ok {
 814  			ret = append(ret, v)
 815  		}
 816  	}
 817  	return ret
 818  }
 819  
 820  func getMobileGatewayByID(zone string, id types.ID) *iaas.MobileGateway {
 821  	v := ds().Get(ResourceMobileGateway, zone, id)
 822  	if v, ok := v.(*iaas.MobileGateway); ok {
 823  		return v
 824  	}
 825  	return nil
 826  }
 827  
 828  func putMobileGateway(zone string, value *iaas.MobileGateway) {
 829  	var v interface{} = value
 830  	if id, ok := v.(accessor.ID); ok {
 831  		ds().Put(ResourceMobileGateway, zone, id.GetID(), value)
 832  		return
 833  	}
 834  	ds().Put(ResourceMobileGateway, zone, 0, value)
 835  }
 836  
 837  func getNFS(zone string) []*iaas.NFS {
 838  	values := ds().List(ResourceNFS, zone)
 839  	var ret []*iaas.NFS
 840  	for _, v := range values {
 841  		if v, ok := v.(*iaas.NFS); ok {
 842  			ret = append(ret, v)
 843  		}
 844  	}
 845  	return ret
 846  }
 847  
 848  func getNFSByID(zone string, id types.ID) *iaas.NFS {
 849  	v := ds().Get(ResourceNFS, zone, id)
 850  	if v, ok := v.(*iaas.NFS); ok {
 851  		return v
 852  	}
 853  	return nil
 854  }
 855  
 856  func putNFS(zone string, value *iaas.NFS) {
 857  	var v interface{} = value
 858  	if id, ok := v.(accessor.ID); ok {
 859  		ds().Put(ResourceNFS, zone, id.GetID(), value)
 860  		return
 861  	}
 862  	ds().Put(ResourceNFS, zone, 0, value)
 863  }
 864  
 865  func getNote(zone string) []*iaas.Note {
 866  	values := ds().List(ResourceNote, zone)
 867  	var ret []*iaas.Note
 868  	for _, v := range values {
 869  		if v, ok := v.(*iaas.Note); ok {
 870  			ret = append(ret, v)
 871  		}
 872  	}
 873  	return ret
 874  }
 875  
 876  func getNoteByID(zone string, id types.ID) *iaas.Note {
 877  	v := ds().Get(ResourceNote, zone, id)
 878  	if v, ok := v.(*iaas.Note); ok {
 879  		return v
 880  	}
 881  	return nil
 882  }
 883  
 884  func putNote(zone string, value *iaas.Note) {
 885  	var v interface{} = value
 886  	if id, ok := v.(accessor.ID); ok {
 887  		ds().Put(ResourceNote, zone, id.GetID(), value)
 888  		return
 889  	}
 890  	ds().Put(ResourceNote, zone, 0, value)
 891  }
 892  
 893  func getPacketFilter(zone string) []*iaas.PacketFilter {
 894  	values := ds().List(ResourcePacketFilter, zone)
 895  	var ret []*iaas.PacketFilter
 896  	for _, v := range values {
 897  		if v, ok := v.(*iaas.PacketFilter); ok {
 898  			ret = append(ret, v)
 899  		}
 900  	}
 901  	return ret
 902  }
 903  
 904  func getPacketFilterByID(zone string, id types.ID) *iaas.PacketFilter {
 905  	v := ds().Get(ResourcePacketFilter, zone, id)
 906  	if v, ok := v.(*iaas.PacketFilter); ok {
 907  		return v
 908  	}
 909  	return nil
 910  }
 911  
 912  func putPacketFilter(zone string, value *iaas.PacketFilter) {
 913  	var v interface{} = value
 914  	if id, ok := v.(accessor.ID); ok {
 915  		ds().Put(ResourcePacketFilter, zone, id.GetID(), value)
 916  		return
 917  	}
 918  	ds().Put(ResourcePacketFilter, zone, 0, value)
 919  }
 920  
 921  func getPrivateHost(zone string) []*iaas.PrivateHost {
 922  	values := ds().List(ResourcePrivateHost, zone)
 923  	var ret []*iaas.PrivateHost
 924  	for _, v := range values {
 925  		if v, ok := v.(*iaas.PrivateHost); ok {
 926  			ret = append(ret, v)
 927  		}
 928  	}
 929  	return ret
 930  }
 931  
 932  func getPrivateHostByID(zone string, id types.ID) *iaas.PrivateHost {
 933  	v := ds().Get(ResourcePrivateHost, zone, id)
 934  	if v, ok := v.(*iaas.PrivateHost); ok {
 935  		return v
 936  	}
 937  	return nil
 938  }
 939  
 940  func putPrivateHost(zone string, value *iaas.PrivateHost) {
 941  	var v interface{} = value
 942  	if id, ok := v.(accessor.ID); ok {
 943  		ds().Put(ResourcePrivateHost, zone, id.GetID(), value)
 944  		return
 945  	}
 946  	ds().Put(ResourcePrivateHost, zone, 0, value)
 947  }
 948  
 949  func getPrivateHostPlan(zone string) []*iaas.PrivateHostPlan {
 950  	values := ds().List(ResourcePrivateHostPlan, zone)
 951  	var ret []*iaas.PrivateHostPlan
 952  	for _, v := range values {
 953  		if v, ok := v.(*iaas.PrivateHostPlan); ok {
 954  			ret = append(ret, v)
 955  		}
 956  	}
 957  	return ret
 958  }
 959  
 960  func getPrivateHostPlanByID(zone string, id types.ID) *iaas.PrivateHostPlan {
 961  	v := ds().Get(ResourcePrivateHostPlan, zone, id)
 962  	if v, ok := v.(*iaas.PrivateHostPlan); ok {
 963  		return v
 964  	}
 965  	return nil
 966  }
 967  
 968  func putPrivateHostPlan(zone string, value *iaas.PrivateHostPlan) {
 969  	var v interface{} = value
 970  	if id, ok := v.(accessor.ID); ok {
 971  		ds().Put(ResourcePrivateHostPlan, zone, id.GetID(), value)
 972  		return
 973  	}
 974  	ds().Put(ResourcePrivateHostPlan, zone, 0, value)
 975  }
 976  
 977  func getProxyLB(zone string) []*iaas.ProxyLB {
 978  	values := ds().List(ResourceProxyLB, zone)
 979  	var ret []*iaas.ProxyLB
 980  	for _, v := range values {
 981  		if v, ok := v.(*iaas.ProxyLB); ok {
 982  			ret = append(ret, v)
 983  		}
 984  	}
 985  	return ret
 986  }
 987  
 988  func getProxyLBByID(zone string, id types.ID) *iaas.ProxyLB {
 989  	v := ds().Get(ResourceProxyLB, zone, id)
 990  	if v, ok := v.(*iaas.ProxyLB); ok {
 991  		return v
 992  	}
 993  	return nil
 994  }
 995  
 996  func putProxyLB(zone string, value *iaas.ProxyLB) {
 997  	var v interface{} = value
 998  	if id, ok := v.(accessor.ID); ok {
 999  		ds().Put(ResourceProxyLB, zone, id.GetID(), value)
1000  		return
1001  	}
1002  	ds().Put(ResourceProxyLB, zone, 0, value)
1003  }
1004  
1005  func getRegion(zone string) []*iaas.Region {
1006  	values := ds().List(ResourceRegion, zone)
1007  	var ret []*iaas.Region
1008  	for _, v := range values {
1009  		if v, ok := v.(*iaas.Region); ok {
1010  			ret = append(ret, v)
1011  		}
1012  	}
1013  	return ret
1014  }
1015  
1016  func getRegionByID(zone string, id types.ID) *iaas.Region {
1017  	v := ds().Get(ResourceRegion, zone, id)
1018  	if v, ok := v.(*iaas.Region); ok {
1019  		return v
1020  	}
1021  	return nil
1022  }
1023  
1024  func putRegion(zone string, value *iaas.Region) {
1025  	var v interface{} = value
1026  	if id, ok := v.(accessor.ID); ok {
1027  		ds().Put(ResourceRegion, zone, id.GetID(), value)
1028  		return
1029  	}
1030  	ds().Put(ResourceRegion, zone, 0, value)
1031  }
1032  
1033  func getServer(zone string) []*iaas.Server {
1034  	values := ds().List(ResourceServer, zone)
1035  	var ret []*iaas.Server
1036  	for _, v := range values {
1037  		if v, ok := v.(*iaas.Server); ok {
1038  			ret = append(ret, v)
1039  		}
1040  	}
1041  	return ret
1042  }
1043  
1044  func getServerByID(zone string, id types.ID) *iaas.Server {
1045  	v := ds().Get(ResourceServer, zone, id)
1046  	if v, ok := v.(*iaas.Server); ok {
1047  		return v
1048  	}
1049  	return nil
1050  }
1051  
1052  func putServer(zone string, value *iaas.Server) {
1053  	var v interface{} = value
1054  	if id, ok := v.(accessor.ID); ok {
1055  		ds().Put(ResourceServer, zone, id.GetID(), value)
1056  		return
1057  	}
1058  	ds().Put(ResourceServer, zone, 0, value)
1059  }
1060  
1061  func getServerPlan(zone string) []*iaas.ServerPlan {
1062  	values := ds().List(ResourceServerPlan, zone)
1063  	var ret []*iaas.ServerPlan
1064  	for _, v := range values {
1065  		if v, ok := v.(*iaas.ServerPlan); ok {
1066  			ret = append(ret, v)
1067  		}
1068  	}
1069  	return ret
1070  }
1071  
1072  func getServerPlanByID(zone string, id types.ID) *iaas.ServerPlan {
1073  	v := ds().Get(ResourceServerPlan, zone, id)
1074  	if v, ok := v.(*iaas.ServerPlan); ok {
1075  		return v
1076  	}
1077  	return nil
1078  }
1079  
1080  func putServerPlan(zone string, value *iaas.ServerPlan) {
1081  	var v interface{} = value
1082  	if id, ok := v.(accessor.ID); ok {
1083  		ds().Put(ResourceServerPlan, zone, id.GetID(), value)
1084  		return
1085  	}
1086  	ds().Put(ResourceServerPlan, zone, 0, value)
1087  }
1088  
1089  func getServiceClass(zone string) []*iaas.ServiceClass {
1090  	values := ds().List(ResourceServiceClass, zone)
1091  	var ret []*iaas.ServiceClass
1092  	for _, v := range values {
1093  		if v, ok := v.(*iaas.ServiceClass); ok {
1094  			ret = append(ret, v)
1095  		}
1096  	}
1097  	return ret
1098  }
1099  
1100  func getServiceClassByID(zone string, id types.ID) *iaas.ServiceClass {
1101  	v := ds().Get(ResourceServiceClass, zone, id)
1102  	if v, ok := v.(*iaas.ServiceClass); ok {
1103  		return v
1104  	}
1105  	return nil
1106  }
1107  
1108  func putServiceClass(zone string, value *iaas.ServiceClass) {
1109  	var v interface{} = value
1110  	if id, ok := v.(accessor.ID); ok {
1111  		ds().Put(ResourceServiceClass, zone, id.GetID(), value)
1112  		return
1113  	}
1114  	ds().Put(ResourceServiceClass, zone, 0, value)
1115  }
1116  
1117  func getSIM(zone string) []*iaas.SIM {
1118  	values := ds().List(ResourceSIM, zone)
1119  	var ret []*iaas.SIM
1120  	for _, v := range values {
1121  		if v, ok := v.(*iaas.SIM); ok {
1122  			ret = append(ret, v)
1123  		}
1124  	}
1125  	return ret
1126  }
1127  
1128  func getSIMByID(zone string, id types.ID) *iaas.SIM {
1129  	v := ds().Get(ResourceSIM, zone, id)
1130  	if v, ok := v.(*iaas.SIM); ok {
1131  		return v
1132  	}
1133  	return nil
1134  }
1135  
1136  func putSIM(zone string, value *iaas.SIM) {
1137  	var v interface{} = value
1138  	if id, ok := v.(accessor.ID); ok {
1139  		ds().Put(ResourceSIM, zone, id.GetID(), value)
1140  		return
1141  	}
1142  	ds().Put(ResourceSIM, zone, 0, value)
1143  }
1144  
1145  func getSimpleMonitor(zone string) []*iaas.SimpleMonitor {
1146  	values := ds().List(ResourceSimpleMonitor, zone)
1147  	var ret []*iaas.SimpleMonitor
1148  	for _, v := range values {
1149  		if v, ok := v.(*iaas.SimpleMonitor); ok {
1150  			ret = append(ret, v)
1151  		}
1152  	}
1153  	return ret
1154  }
1155  
1156  func getSimpleMonitorByID(zone string, id types.ID) *iaas.SimpleMonitor {
1157  	v := ds().Get(ResourceSimpleMonitor, zone, id)
1158  	if v, ok := v.(*iaas.SimpleMonitor); ok {
1159  		return v
1160  	}
1161  	return nil
1162  }
1163  
1164  func putSimpleMonitor(zone string, value *iaas.SimpleMonitor) {
1165  	var v interface{} = value
1166  	if id, ok := v.(accessor.ID); ok {
1167  		ds().Put(ResourceSimpleMonitor, zone, id.GetID(), value)
1168  		return
1169  	}
1170  	ds().Put(ResourceSimpleMonitor, zone, 0, value)
1171  }
1172  
1173  func getSimpleNotificationDestination(zone string) []*iaas.SimpleNotificationDestination {
1174  	values := ds().List(ResourceSimpleNotificationDestination, zone)
1175  	var ret []*iaas.SimpleNotificationDestination
1176  	for _, v := range values {
1177  		if v, ok := v.(*iaas.SimpleNotificationDestination); ok {
1178  			ret = append(ret, v)
1179  		}
1180  	}
1181  	return ret
1182  }
1183  
1184  func getSimpleNotificationDestinationByID(zone string, id types.ID) *iaas.SimpleNotificationDestination {
1185  	v := ds().Get(ResourceSimpleNotificationDestination, zone, id)
1186  	if v, ok := v.(*iaas.SimpleNotificationDestination); ok {
1187  		return v
1188  	}
1189  	return nil
1190  }
1191  
1192  func putSimpleNotificationDestination(zone string, value *iaas.SimpleNotificationDestination) {
1193  	var v interface{} = value
1194  	if id, ok := v.(accessor.ID); ok {
1195  		ds().Put(ResourceSimpleNotificationDestination, zone, id.GetID(), value)
1196  		return
1197  	}
1198  	ds().Put(ResourceSimpleNotificationDestination, zone, 0, value)
1199  }
1200  
1201  func getSimpleNotificationGroup(zone string) []*iaas.SimpleNotificationGroup {
1202  	values := ds().List(ResourceSimpleNotificationGroup, zone)
1203  	var ret []*iaas.SimpleNotificationGroup
1204  	for _, v := range values {
1205  		if v, ok := v.(*iaas.SimpleNotificationGroup); ok {
1206  			ret = append(ret, v)
1207  		}
1208  	}
1209  	return ret
1210  }
1211  
1212  func getSimpleNotificationGroupByID(zone string, id types.ID) *iaas.SimpleNotificationGroup {
1213  	v := ds().Get(ResourceSimpleNotificationGroup, zone, id)
1214  	if v, ok := v.(*iaas.SimpleNotificationGroup); ok {
1215  		return v
1216  	}
1217  	return nil
1218  }
1219  
1220  func putSimpleNotificationGroup(zone string, value *iaas.SimpleNotificationGroup) {
1221  	var v interface{} = value
1222  	if id, ok := v.(accessor.ID); ok {
1223  		ds().Put(ResourceSimpleNotificationGroup, zone, id.GetID(), value)
1224  		return
1225  	}
1226  	ds().Put(ResourceSimpleNotificationGroup, zone, 0, value)
1227  }
1228  
1229  func getSSHKey(zone string) []*iaas.SSHKey {
1230  	values := ds().List(ResourceSSHKey, zone)
1231  	var ret []*iaas.SSHKey
1232  	for _, v := range values {
1233  		if v, ok := v.(*iaas.SSHKey); ok {
1234  			ret = append(ret, v)
1235  		}
1236  	}
1237  	return ret
1238  }
1239  
1240  func getSSHKeyByID(zone string, id types.ID) *iaas.SSHKey {
1241  	v := ds().Get(ResourceSSHKey, zone, id)
1242  	if v, ok := v.(*iaas.SSHKey); ok {
1243  		return v
1244  	}
1245  	return nil
1246  }
1247  
1248  func putSSHKey(zone string, value *iaas.SSHKey) {
1249  	var v interface{} = value
1250  	if id, ok := v.(accessor.ID); ok {
1251  		ds().Put(ResourceSSHKey, zone, id.GetID(), value)
1252  		return
1253  	}
1254  	ds().Put(ResourceSSHKey, zone, 0, value)
1255  }
1256  
1257  func getSubnet(zone string) []*iaas.Subnet {
1258  	values := ds().List(ResourceSubnet, zone)
1259  	var ret []*iaas.Subnet
1260  	for _, v := range values {
1261  		if v, ok := v.(*iaas.Subnet); ok {
1262  			ret = append(ret, v)
1263  		}
1264  	}
1265  	return ret
1266  }
1267  
1268  func getSubnetByID(zone string, id types.ID) *iaas.Subnet {
1269  	v := ds().Get(ResourceSubnet, zone, id)
1270  	if v, ok := v.(*iaas.Subnet); ok {
1271  		return v
1272  	}
1273  	return nil
1274  }
1275  
1276  func putSubnet(zone string, value *iaas.Subnet) {
1277  	var v interface{} = value
1278  	if id, ok := v.(accessor.ID); ok {
1279  		ds().Put(ResourceSubnet, zone, id.GetID(), value)
1280  		return
1281  	}
1282  	ds().Put(ResourceSubnet, zone, 0, value)
1283  }
1284  
1285  func getSwitch(zone string) []*iaas.Switch {
1286  	values := ds().List(ResourceSwitch, zone)
1287  	var ret []*iaas.Switch
1288  	for _, v := range values {
1289  		if v, ok := v.(*iaas.Switch); ok {
1290  			ret = append(ret, v)
1291  		}
1292  	}
1293  	return ret
1294  }
1295  
1296  func getSwitchByID(zone string, id types.ID) *iaas.Switch {
1297  	v := ds().Get(ResourceSwitch, zone, id)
1298  	if v, ok := v.(*iaas.Switch); ok {
1299  		return v
1300  	}
1301  	return nil
1302  }
1303  
1304  func putSwitch(zone string, value *iaas.Switch) {
1305  	var v interface{} = value
1306  	if id, ok := v.(accessor.ID); ok {
1307  		ds().Put(ResourceSwitch, zone, id.GetID(), value)
1308  		return
1309  	}
1310  	ds().Put(ResourceSwitch, zone, 0, value)
1311  }
1312  
1313  func getVPCRouter(zone string) []*iaas.VPCRouter {
1314  	values := ds().List(ResourceVPCRouter, zone)
1315  	var ret []*iaas.VPCRouter
1316  	for _, v := range values {
1317  		if v, ok := v.(*iaas.VPCRouter); ok {
1318  			ret = append(ret, v)
1319  		}
1320  	}
1321  	return ret
1322  }
1323  
1324  func getVPCRouterByID(zone string, id types.ID) *iaas.VPCRouter {
1325  	v := ds().Get(ResourceVPCRouter, zone, id)
1326  	if v, ok := v.(*iaas.VPCRouter); ok {
1327  		return v
1328  	}
1329  	return nil
1330  }
1331  
1332  func putVPCRouter(zone string, value *iaas.VPCRouter) {
1333  	var v interface{} = value
1334  	if id, ok := v.(accessor.ID); ok {
1335  		ds().Put(ResourceVPCRouter, zone, id.GetID(), value)
1336  		return
1337  	}
1338  	ds().Put(ResourceVPCRouter, zone, 0, value)
1339  }
1340  
1341  func getZone(zone string) []*iaas.Zone {
1342  	values := ds().List(ResourceZone, zone)
1343  	var ret []*iaas.Zone
1344  	for _, v := range values {
1345  		if v, ok := v.(*iaas.Zone); ok {
1346  			ret = append(ret, v)
1347  		}
1348  	}
1349  	return ret
1350  }
1351  
1352  func getZoneByID(zone string, id types.ID) *iaas.Zone {
1353  	v := ds().Get(ResourceZone, zone, id)
1354  	if v, ok := v.(*iaas.Zone); ok {
1355  		return v
1356  	}
1357  	return nil
1358  }
1359  
1360  func putZone(zone string, value *iaas.Zone) {
1361  	var v interface{} = value
1362  	if id, ok := v.(accessor.ID); ok {
1363  		ds().Put(ResourceZone, zone, id.GetID(), value)
1364  		return
1365  	}
1366  	ds().Put(ResourceZone, zone, 0, value)
1367  }
1368