public RegionTagRetriever(GlsCallerId callerId) { ArgumentValidator.ThrowIfNull("callerId", callerId); this.glsCallerId = callerId; lock (RegionTagRetriever.glsSessionMapLock) { if (RegionTagRetriever.callIdToGlsSessionMap.ContainsKey(callerId)) { this.glsSession = RegionTagRetriever.callIdToGlsSessionMap[callerId]; } else { this.glsSession = this.CreateGlsSession(callerId); RegionTagRetriever.callIdToGlsSessionMap[callerId] = this.glsSession; } } }
protected virtual GlsDirectorySession CreateGlsSession(GlsCallerId callerId) { return(new GlsDirectorySession(callerId)); }