public interface com.microsoft.azure.management.network.model.HasProtocol<ProtocolT>
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: com.microsoft.azure.management.network.model.HasProtocol
  super_class: java.lang.Object
{
  public abstract ProtocolT protocol();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Signature: ()TProtocolT;
}
Signature: <ProtocolT:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "HasProtocol.java"
NestMembers:
  com.microsoft.azure.management.network.model.HasProtocol$DefinitionStages  com.microsoft.azure.management.network.model.HasProtocol$DefinitionStages$WithProtocol  com.microsoft.azure.management.network.model.HasProtocol$UpdateDefinitionStages  com.microsoft.azure.management.network.model.HasProtocol$UpdateDefinitionStages$WithProtocol  com.microsoft.azure.management.network.model.HasProtocol$UpdateStages  com.microsoft.azure.management.network.model.HasProtocol$UpdateStages$WithProtocol
InnerClasses:
  public abstract DefinitionStages = com.microsoft.azure.management.network.model.HasProtocol$DefinitionStages of com.microsoft.azure.management.network.model.HasProtocol
  public abstract UpdateDefinitionStages = com.microsoft.azure.management.network.model.HasProtocol$UpdateDefinitionStages of com.microsoft.azure.management.network.model.HasProtocol
  public abstract UpdateStages = com.microsoft.azure.management.network.model.HasProtocol$UpdateStages of com.microsoft.azure.management.network.model.HasProtocol
    RuntimeInvisibleAnnotations: 
      com.microsoft.azure.management.apigeneration.Fluent()