digraph NotSecureMode {
  graph [label="Not Secure Mode" rankdir="LR"];

  subgraph cluster_GSA {
    color=blue;
    label="GSA";
    subgraph cluster_FeedergateServer {
      color=blue;
      label="HTTP Server";
      Feedergate; 
    }
    Crawler;
    subgraph cluster_Secmgr {
      color=blue;
      label="Security Manager";
      SecmgrAuthz [label="Authz"];
    }
    subgraph cluster_AdminConsoleServer {
      color=blue;
      label="HTTP Server";
      AdminConsole [label="Admin Console"];
    }
  }

  subgraph cluster_UserAgent {
    color=darkgreen;
    label="";
    WebBrowser [shape=diamond];
  }

  subgraph cluster_Adaptor {
    color=blue;
    FeedPusher;
    subgraph cluster_Server {
      color=blue;
      label="HTTP Server";
      Retriever;
      AdaptorAuthz [label="Authz"];
    }
    Dashboard;
    label="Adaptor";
  }

  // Communications relationships.
  FeedPusher -> Feedergate [label="metadata-and-url"];
  Crawler -> Retriever [label="GET"];
  SecmgrAuthz -> AdaptorAuthz [label="SAML"];
  Dashboard -> AdminConsole [label="GET"];
  WebBrowser -> Retriever [label="GET"];
  
  // Invisible items forcing order.
  FakeRoot [style=invis];
  FakeRoot -> Feedergate [style=invis];
}
