Beispiel #1
0
 internal static void SetPermissionProperty(this PermissionsProperty property, string propertyValue)
 {
     // TableData 21=r
     while (propertyValue.Length > 0)
     {
         var match = Parsing.MustMatch(ref propertyValue, @"^TableData\s(\d+)=(r?)(i?)(m?)(d?)(,\s)?");
         property.Value.Set(match.Groups[1].Value.ToInteger(), match.Groups[2].Value == "r", match.Groups[3].Value == "i", match.Groups[4].Value == "m", match.Groups[5].Value == "d");
     }
 }
Beispiel #2
0
        public static void Write(this PermissionsProperty property, bool isLastProperty, PropertiesStyle style, CSideWriter writer)
        {
            writer.Write("{0}=", property.Name);
            writer.Indent(writer.Column);

            foreach (var permission in property.Value)
            {
                var isLastValue = (permission == property.Value.Last());
                var terminator  = isLastValue ? ";" : ",";
                var read        = permission.ReadPermission ? "r" : "";
                var insert      = permission.InsertPermission ? "i" : "";
                var modify      = permission.ModifyPermission ? "m" : "";
                var delete      = permission.DeletePermission ? "d" : "";

                writer.WriteLine("TableData {0}={1}{2}{3}{4}{5}", permission.TableID, read, insert, modify, delete, terminator);
            }

            writer.Unindent();
        }