public SymbolicReferenceData Invoke(QuerySymbolicReferenceParameters parameters) { Verify.Argument.IsNotNull(parameters, nameof(parameters)); var fileName = _repository.GetGitFileName(parameters.Name); if (File.Exists(fileName)) { string pointer; using (var fs = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read)) { if (fs.Length == 0) { return(new SymbolicReferenceData(null, ReferenceType.None)); } else { using (var sr = new StreamReader(fs)) { pointer = sr.ReadLine(); sr.Close(); } } } return(Parse(pointer)); } return(new SymbolicReferenceData(null, ReferenceType.None)); }