- Added CSharpServiceType NONE to skip service generation.
- Defaulted service_generator_type to NONE
- Added /protos/extest/unittest_generic_services.proto to test services
- Migrated unit tests to use the new generic services for testing
diff --git a/src/ProtoGen/ServiceInterfaceGenerator.cs b/src/ProtoGen/ServiceInterfaceGenerator.cs
index 4aa8ffa..019df4c 100644
--- a/src/ProtoGen/ServiceInterfaceGenerator.cs
+++ b/src/ProtoGen/ServiceInterfaceGenerator.cs
@@ -47,6 +47,9 @@
       : base(descriptor) {

       svcType = descriptor.File.CSharpOptions.ServiceGeneratorType;

       switch (svcType) {

+        case CSharpServiceType.NONE:

+          _generator = new NoServicesGenerator(descriptor);

+          break;

         case CSharpServiceType.GENERIC:

           _generator = new GenericServiceGenerator(descriptor);

           break;

@@ -63,6 +66,19 @@
     public void Generate(TextGenerator writer) {

       _generator.Generate(writer);

     }

+      

+    class NoServicesGenerator : SourceGeneratorBase<ServiceDescriptor>, ISourceGenerator {

+      

+      public NoServicesGenerator(ServiceDescriptor descriptor)

+        : base(descriptor) {

+      }

+      public virtual void Generate(TextGenerator writer) {

+        writer.WriteLine("/*");

+        writer.WriteLine("* Service generation is now disabled by default, use the following option to enable:");

+        writer.WriteLine("* option (google.protobuf.csharp_file_options).service_generator_type = GENERIC;");

+        writer.WriteLine("*/");

+      }

+    }

 

     class ServiceInterfaceGenerator : SourceGeneratorBase<ServiceDescriptor>, ISourceGenerator {