blob: a4c04b016259ff4944fda5327043fc7e404b2b8e [file] [log] [blame]
Author Namea594e632018-08-10 11:33:58 -04001/*
2 Copyright 2017 the original author or authors.
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15*/
16
17package models
18
19import (
donNewtonAlphab9b85eb2018-08-14 14:28:22 -040020 "sync"
Author Namea594e632018-08-10 11:33:58 -040021)
22
donNewtonAlphab9b85eb2018-08-14 14:28:22 -040023var once sync.Once
donNewtonAlphae7ab5b92018-09-27 15:09:14 -040024var chassisMap map[string]*ChassisHolder
Author Namea594e632018-08-10 11:33:58 -040025
26/*
donNewtonAlphae7ab5b92018-09-27 15:09:14 -040027GetChassisMap return the chassis map singleton
Author Namea594e632018-08-10 11:33:58 -040028*/
donNewtonAlphae7ab5b92018-09-27 15:09:14 -040029func GetChassisMap() *map[string]*ChassisHolder {
donNewtonAlphab9b85eb2018-08-14 14:28:22 -040030 // the go singleton pattern
31 once.Do(func() {
donNewtonAlphae7ab5b92018-09-27 15:09:14 -040032 chassisMap = make(map[string]*ChassisHolder)
donNewtonAlphab9b85eb2018-08-14 14:28:22 -040033 })
Author Namea594e632018-08-10 11:33:58 -040034 return &chassisMap
35}