예제 #1
0
        private IPsParser BuildPsParser(string psfile, UserTokenSeperator seperator)
        {
            string parameterOpenSequence;
            string parameterCloseSequence;

            switch (seperator)
            {
            case UserTokenSeperator.AngleBrackets:
                parameterOpenSequence  = "<<<";
                parameterCloseSequence = ">>>";
                break;

            case UserTokenSeperator.CurlyBrackets:
                parameterOpenSequence  = "{{{";
                parameterCloseSequence = "}}}";
                break;

            case UserTokenSeperator.RoundBrackets:
                parameterOpenSequence  = "(((";
                parameterCloseSequence = ")))";
                break;

            case UserTokenSeperator.SquareBrackets:
            default:
                parameterOpenSequence  = "[[[";
                parameterCloseSequence = "]]]";
                break;
            }

            return(_psParserFactory.BuildPsParser(psfile, parameterOpenSequence, parameterCloseSequence));
        }
예제 #2
0
        public void ReplaceWith(UserTokens source)
        {
            if (Enabled != source.Enabled)
            {
                Enabled = source.Enabled;
            }

            if (Seperator != source.Seperator)
            {
                Seperator = source.Seperator;
            }
        }
예제 #3
0
        public string GetUserTokenDocumentExample(UserTokenSeperator userTokenSeperator)
        {
            switch (userTokenSeperator)
            {
            case UserTokenSeperator.AngleBrackets:
                return("<<<" + UserTokenDocumentExample + ">>>");

            case UserTokenSeperator.CurlyBrackets:
                return("{{{" + UserTokenDocumentExample + "}}}");

            case UserTokenSeperator.RoundBrackets:
                return("(((" + UserTokenDocumentExample + ")))");

            case UserTokenSeperator.SquareBrackets:
            default:
                return("[[[" + UserTokenDocumentExample + "]]]");
            }
        }
예제 #4
0
        public UserToken ExtractUserTokenFromPsFile(string psFile, UserTokenSeperator seperator)
        {
            var psParser = BuildPsParser(psFile, seperator);

            psParser.Analyse();
            psParser.RemoveParameterLinesFromPSFile();
            psParser.CloseStream();

            var userToken = new UserToken();

            if (psParser.UserTokens == null)
            {
                return(userToken);
            }

            foreach (var ut in psParser.UserTokens)
            {
                userToken.AddKeyValuePair(ut.Key, ut.Value);
            }

            return(userToken);
        }
예제 #5
0
 public UserToken ExtractUserTokenFromPsFile(string psFile, UserTokenSeperator seperator)
 {
     return(new UserToken());
 }
예제 #6
0
 public void ReadValues(Data data, string path = "")
 {
     Enabled   = bool.TryParse(data.GetValue(@"" + path + @"Enabled"), out var tmpEnabled) ? tmpEnabled : false;
     Seperator = Enum.TryParse <UserTokenSeperator>(data.GetValue(@"" + path + @"Seperator"), out var tmpSeperator) ? tmpSeperator : UserTokenSeperator.SquareBrackets;
 }