aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/csharp/Grpc.Tools/build/_protobuf/Protobuf.CSharp.xml
blob: 2c41fbcbd068fc69c5a475676661c1a50664c805 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<ProjectSchemaDefinitions xmlns="http://schemas.microsoft.com/build/2009/properties">
  <FileExtension Name=".proto"
                 ContentType="ProtoFile" />

  <ContentType Name="ProtoFile"
               DisplayName="Protocol buffer definitions file"
               ItemType="ProtoBuf" />

  <ItemType Name="ProtoBuf"
            DisplayName="Protobuf compiler" />

  <Rule Name="ProtoBuf"
        DisplayName="File Properties"
        PageTemplate="generic"
        Description="File Properties"
        OverrideMode="Extend">
    <Rule.DataSource>
      <DataSource Persistence="ProjectFile" Label="Configuration" ItemType="ProtoBuf"
                  HasConfigurationCondition="false" SourceOfDefaultValue="AfterContext" />
    </Rule.DataSource>

    <Rule.Categories>
      <Category Name="Advanced" DisplayName="Advanced" />
      <Category Name="Protobuf" DisplayName="Protobuf" />
      <Category Name="Misc" DisplayName="Misc" />
    </Rule.Categories>

    <DynamicEnumProperty Name="{}{ItemType}" DisplayName="Build Action"  Category="Advanced"
                   Description="How the file relates to the build and deployment processes."
                   EnumProvider="ItemTypes" />

    <StringProperty Name="Identity" Visible="false" ReadOnly="true">
      <StringProperty.DataSource>
        <DataSource Persistence="Intrinsic" ItemType="ProtoBuf"
                    PersistedName="Identity" SourceOfDefaultValue="AfterContext" />
      </StringProperty.DataSource>
    </StringProperty>

    <StringProperty Name="FullPath"
                    DisplayName="Full Path"
                    ReadOnly="true"
                    Category="Misc"
                    Description="Location of the file.">
      <StringProperty.DataSource>
        <DataSource Persistence="Intrinsic" ItemType="ProtoBuf"
                    PersistedName="FullPath" SourceOfDefaultValue="AfterContext" />
      </StringProperty.DataSource>
    </StringProperty>

    <StringProperty Name="FileNameAndExtension"
                    DisplayName="File Name"
                    ReadOnly="true"
                    Category="Misc"
                    Description="Name of the file or folder.">
      <StringProperty.DataSource>
        <DataSource Persistence="Intrinsic" ItemType="ProtoBuf"
                    PersistedName="FileNameAndExtension" SourceOfDefaultValue="AfterContext" />
      </StringProperty.DataSource>
    </StringProperty>

    <BoolProperty Name="Visible" Visible="false" Default="true" />

    <StringProperty Name="DependentUpon" Visible="false">
      <StringProperty.Metadata>
        <NameValuePair Name="DoNotCopyAcrossProjects" Value="true" />
      </StringProperty.Metadata>
    </StringProperty>

    <StringProperty Name="Link" Visible="false">
      <StringProperty.DataSource>
        <DataSource SourceOfDefaultValue="AfterContext" />
      </StringProperty.DataSource>
      <StringProperty.Metadata>
        <NameValuePair Name="DoNotCopyAcrossProjects" Value="true" />
      </StringProperty.Metadata>
    </StringProperty>

    <EnumProperty Name="Access" DisplayName="Class Access"
                  Category="Protobuf"
                  Description="Public or internal access modifier on generated classes.">
      <EnumValue Name="Public" DisplayName="Public" IsDefault="true" />
      <EnumValue Name="Internal" DisplayName="Internal" />
      <EnumProperty.DataSource>
        <DataSource ItemType="ProtoBuf" SourceOfDefaultValue="AfterContext"
                    PersistenceStyle="Attribute" />
      </EnumProperty.DataSource>
    </EnumProperty>

    <BoolProperty Name="ProtoCompile" DisplayName="Compile Protobuf"
                  Category="Protobuf" Default="true"
                  Description="Specifies if this file is compiled or only imported by other files.">
      <BoolProperty.DataSource>
        <DataSource ItemType="ProtoBuf" SourceOfDefaultValue="AfterContext"
                    PersistenceStyle="Attribute" />
      </BoolProperty.DataSource>
    </BoolProperty>

  </Rule>
</ProjectSchemaDefinitions>