aboutsummaryrefslogtreecommitdiffstats
path: root/docs/architecture/images/DownloadPoliciesToPDP.svg
diff options
context:
space:
mode:
authorliamfallon <liam.fallon@est.tech>2019-05-28 13:27:04 +0000
committerliamfallon <liam.fallon@est.tech>2019-05-28 13:27:04 +0000
commitc9e2790646530c9546ecbf0038248cfdf663521c (patch)
tree3ca387794e2fcb370bd685d87f52b0523e34904f /docs/architecture/images/DownloadPoliciesToPDP.svg
parente62f711b12a3d2340172e8b6d608989197bf4dc9 (diff)
Complete Architecture Document
Issue-ID: POLICY-1676 Change-Id: Ic0a631dbc27c69455cfc4b0cc12ed7bd1131cce8 Signed-off-by: liamfallon <liam.fallon@est.tech>
Diffstat (limited to 'docs/architecture/images/DownloadPoliciesToPDP.svg')
-rw-r--r--docs/architecture/images/DownloadPoliciesToPDP.svg55
1 files changed, 55 insertions, 0 deletions
diff --git a/docs/architecture/images/DownloadPoliciesToPDP.svg b/docs/architecture/images/DownloadPoliciesToPDP.svg
new file mode 100644
index 00000000..26993eb9
--- /dev/null
+++ b/docs/architecture/images/DownloadPoliciesToPDP.svg
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="888px" preserveAspectRatio="none" style="width:736px;height:888px;" version="1.1" viewBox="0 0 736 888" width="736px" zoomAndPan="magnify"><defs><filter height="300%" id="f1p7etc9mad84n" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="200" x="269.5" y="22.9951">Download Policies to PDP</text><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="28" style="stroke: #A80036; stroke-width: 1.0;" width="10" x="359" y="289.0625"/><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="35.1328" style="stroke: #A80036; stroke-width: 1.0;" width="10" x="612" y="382.3281"/><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="90.2031" style="stroke: #000000; stroke-width: 2.0;" width="637.5" x="13" y="133.5938"/><rect fill="#FFFFFF" height="43.9375" style="stroke: none; stroke-width: 1.0;" width="637.5" x="13" y="179.8594"/><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="315.3359" style="stroke: #000000; stroke-width: 2.0;" width="319" x="331.5" y="439.4609"/><rect fill="#FFFFFF" height="104.3359" style="stroke: none; stroke-width: 1.0;" width="319" x="331.5" y="546.125"/><rect fill="#FFFFFF" height="104.3359" style="stroke: none; stroke-width: 1.0;" width="319" x="331.5" y="650.4609"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="42" x2="42" y1="116.5938" y2="800.9297"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="104" x2="104" y1="116.5938" y2="800.9297"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="363.5" x2="363.5" y1="116.5938" y2="800.9297"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="541" x2="541" y1="116.5938" y2="800.9297"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="616.5" x2="616.5" y1="116.5938" y2="800.9297"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="32" x="23" y="113.292">User</text><ellipse cx="42" cy="43.2969" fill="#FEFECE" filter="url(#f1p7etc9mad84n)" rx="8" ry="8" style="stroke: #A80036; stroke-width: 2.0;"/><path d="M42,51.2969 L42,78.2969 M29,59.2969 L55,59.2969 M42,78.2969 L29,93.2969 M42,78.2969 L55,93.2969 " fill="none" filter="url(#f1p7etc9mad84n)" style="stroke: #A80036; stroke-width: 2.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="32" x="23" y="812.9248">User</text><ellipse cx="42" cy="826.2266" fill="#FEFECE" filter="url(#f1p7etc9mad84n)" rx="8" ry="8" style="stroke: #A80036; stroke-width: 2.0;"/><path d="M42,834.2266 L42,861.2266 M29,842.2266 L55,842.2266 M42,861.2266 L29,876.2266 M42,861.2266 L55,876.2266 " fill="none" filter="url(#f1p7etc9mad84n)" style="stroke: #A80036; stroke-width: 2.0;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="60" x="71" y="113.292">PolicyDB</text><path d="M86,64.2969 C86,54.2969 104,54.2969 104,54.2969 C104,54.2969 122,54.2969 122,64.2969 L122,90.2969 C122,100.2969 104,100.2969 104,100.2969 C104,100.2969 86,100.2969 86,90.2969 L86,64.2969 " fill="#FEFECE" filter="url(#f1p7etc9mad84n)" style="stroke: #000000; stroke-width: 1.5;"/><path d="M86,64.2969 C86,74.2969 104,74.2969 104,74.2969 C104,74.2969 122,74.2969 122,64.2969 " fill="none" style="stroke: #000000; stroke-width: 1.5;"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="60" x="71" y="812.9248">PolicyDB</text><path d="M86,826.2266 C86,816.2266 104,816.2266 104,816.2266 C104,816.2266 122,816.2266 122,826.2266 L122,852.2266 C122,862.2266 104,862.2266 104,862.2266 C104,862.2266 86,862.2266 86,852.2266 L86,826.2266 " fill="#FEFECE" filter="url(#f1p7etc9mad84n)" style="stroke: #000000; stroke-width: 1.5;"/><path d="M86,826.2266 C86,836.2266 104,836.2266 104,836.2266 C104,836.2266 122,836.2266 122,826.2266 " fill="none" style="stroke: #000000; stroke-width: 1.5;"/><rect fill="#FEFECE" filter="url(#f1p7etc9mad84n)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="41" x="341.5" y="81.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="348.5" y="101.292">PAP</text><rect fill="#FEFECE" filter="url(#f1p7etc9mad84n)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="41" x="341.5" y="799.9297"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="27" x="348.5" y="819.9248">PAP</text><rect fill="#FEFECE" filter="url(#f1p7etc9mad84n)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="62" x="508" y="81.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="48" x="515" y="101.292">DMaaP</text><rect fill="#FEFECE" filter="url(#f1p7etc9mad84n)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="62" x="508" y="799.9297"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="48" x="515" y="819.9248">DMaaP</text><rect fill="#FEFECE" filter="url(#f1p7etc9mad84n)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="43" x="593.5" y="81.2969"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="29" x="600.5" y="101.292">PDP</text><rect fill="#FEFECE" filter="url(#f1p7etc9mad84n)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="43" x="593.5" y="799.9297"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="29" x="600.5" y="819.9248">PDP</text><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="28" style="stroke: #A80036; stroke-width: 1.0;" width="10" x="359" y="289.0625"/><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="35.1328" style="stroke: #A80036; stroke-width: 1.0;" width="10" x="612" y="382.3281"/><path d="M13,133.5938 L77,133.5938 L77,140.5938 L67,150.5938 L13,150.5938 L13,133.5938 " fill="#EEEEEE" style="stroke: #000000; stroke-width: 1.0;"/><rect fill="none" height="90.2031" style="stroke: #000000; stroke-width: 2.0;" width="637.5" x="13" y="133.5938"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="19" x="28" y="146.6606">alt</text><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="86" x="92" y="145.8042">[PDP Startup]</text><polygon fill="#A80036" points="375,167.8594,365,171.8594,375,175.8594,371,171.8594" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="369" x2="616" y1="171.8594" y2="171.8594"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="381" y="166.7935">1</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="216" x="394" y="166.7935">Send Status (initial status) to PAP</text><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="13" x2="650.5" y1="180.8594" y2="180.8594"/><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="178" x="18" y="191.0698">[Update Request from User]</text><polygon fill="#A80036" points="352,211.7969,362,215.7969,352,219.7969,356,215.7969" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="42" x2="358" y1="215.7969" y2="215.7969"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="49" y="210.731">2</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="148" x="62" y="210.731">Update Policies on PDP</text><polygon fill="#A80036" points="115,247.9297,105,251.9297,115,255.9297,111,251.9297" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="109" x2="363" y1="251.9297" y2="251.9297"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="121" y="246.8638">3</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="223" x="134" y="246.8638">Read PDP metadata and Policy Set</text><line style="stroke: #A80036; stroke-width: 1.0;" x1="369" x2="411" y1="281.0625" y2="281.0625"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="411" x2="411" y1="281.0625" y2="294.0625"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="370" x2="411" y1="294.0625" y2="294.0625"/><polygon fill="#A80036" points="380,290.0625,370,294.0625,380,298.0625,376,294.0625" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="376" y="275.9966">4</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="150" x="389" y="275.9966">Prepare for PDP update</text><polygon fill="#A80036" points="605,349.1953,615,353.1953,605,357.1953,609,353.1953" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="364" x2="611" y1="353.1953" y2="353.1953"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="371" y="348.1294">5</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="171" x="384" y="348.1294">Set PDP mode as PASSIVE</text><polygon fill="#A80036" points="600,378.3281,610,382.3281,600,386.3281,604,382.3281" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="364" x2="606" y1="382.3281" y2="382.3281"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="371" y="377.2622">6</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="216" x="384" y="377.2622">Transfer Policy Set Policies to PDP</text><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="622" x2="664" y1="416.4609" y2="416.4609"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="664" x2="664" y1="416.4609" y2="429.4609"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="617" x2="664" y1="429.4609" y2="429.4609"/><polygon fill="#A80036" points="627,425.4609,617,429.4609,627,433.4609,623,429.4609" style="stroke: #A80036; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="629" y="411.395">7</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="82" x="642" y="411.395">Load Policies</text><path d="M331.5,439.4609 L395.5,439.4609 L395.5,446.4609 L385.5,456.4609 L331.5,456.4609 L331.5,439.4609 " fill="#EEEEEE" style="stroke: #000000; stroke-width: 1.0;"/><rect fill="none" height="315.3359" style="stroke: #000000; stroke-width: 2.0;" width="319" x="331.5" y="439.4609"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="19" x="346.5" y="452.5278">alt</text><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="190" x="410.5" y="451.6714">[PDP Mode should be ACTIVE]</text><polygon fill="#A80036" points="605,473.7266,615,477.7266,605,481.7266,609,477.7266" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="364" x2="611" y1="477.7266" y2="477.7266"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="371" y="472.6606">8</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="161" x="384" y="472.6606">Set PDP mode as ACTIVE</text><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="55.3984" style="stroke: #000000; stroke-width: 2.0;" width="125" x="590.5" y="485.7266"/><polygon fill="#EEEEEE" points="590.5,485.7266,656.5,485.7266,656.5,492.7266,646.5,502.7266,590.5,502.7266,590.5,485.7266" style="stroke: #000000; stroke-width: 2.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="21" x="603.5" y="499.7935">ref</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="117" x="596.5" y="518.7935">Execute Policies in</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="84" x="596.5" y="533.9263">ACTIVE Mode</text><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="331.5" x2="650.5" y1="547.125" y2="547.125"/><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="177" x="336.5" y="557.3354">[PDP Mode should be SAFE]</text><polygon fill="#A80036" points="605,578.0625,615,582.0625,605,586.0625,609,582.0625" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="364" x2="611" y1="582.0625" y2="582.0625"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="9" x="371" y="576.9966">9</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="158" x="384" y="576.9966">Set PDP mode as SAFE r</text><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="55.3984" style="stroke: #000000; stroke-width: 2.0;" width="125" x="590.5" y="590.0625"/><polygon fill="#EEEEEE" points="590.5,590.0625,656.5,590.0625,656.5,597.0625,646.5,607.0625,590.5,607.0625,590.5,590.0625" style="stroke: #000000; stroke-width: 2.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="21" x="603.5" y="604.1294">ref</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="117" x="596.5" y="623.1294">Execute Policies in</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="72" x="596.5" y="638.2622">SAFE Mode</text><line style="stroke: #000000; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="331.5" x2="650.5" y1="651.4609" y2="651.4609"/><text fill="#000000" font-family="sans-serif" font-size="11" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="177" x="336.5" y="661.6714">[PDP Mode should be TEST]</text><polygon fill="#A80036" points="605,682.3984,615,686.3984,605,690.3984,609,686.3984" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="364" x2="611" y1="686.3984" y2="686.3984"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="18" x="371" y="681.3325">10</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="147" x="393" y="681.3325">Set PDP mode as TEST</text><rect fill="#FFFFFF" filter="url(#f1p7etc9mad84n)" height="55.3984" style="stroke: #000000; stroke-width: 2.0;" width="125" x="590.5" y="694.3984"/><polygon fill="#EEEEEE" points="590.5,694.3984,656.5,694.3984,656.5,701.3984,646.5,711.3984,590.5,711.3984,590.5,694.3984" style="stroke: #000000; stroke-width: 2.0;"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="21" x="603.5" y="708.4653">ref</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="117" x="596.5" y="727.4653">Execute Policies in</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="70" x="596.5" y="742.5981">TEST Mode</text><polygon fill="#A80036" points="115,778.9297,105,782.9297,115,786.9297,111,782.9297" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 2.0,2.0;" x1="109" x2="363" y1="782.9297" y2="782.9297"/><text fill="#000000" font-family="sans-serif" font-size="13" font-weight="bold" lengthAdjust="spacingAndGlyphs" textLength="18" x="121" y="777.8638">11</text><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="144" x="143" y="777.8638">Update PDP metadata</text><!--
+@startuml
+title Download Policies to PDP
+
+actor User
+database PolicyDB
+participant PAP
+participant DMaaP
+participant PDP
+
+autonumber
+
+alt PDP Startup
+ PDP - -> PAP: Send Status (initial status) to PAP
+else Update Request from User
+ User - -> PAP : Update Policies on PDP
+end
+
+PAP - -> PolicyDB: Read PDP metadata and Policy Set
+PAP -> PAP: Prepare for PDP update
+activate PAP
+deactivate PAP
+
+PAP - -> PDP: Set PDP mode as PASSIVE
+
+PAP - -> PDP: Transfer Policy Set Policies to PDP
+
+activate PDP
+PDP - -> PDP: Load Policies
+deactivate PDP
+
+alt PDP Mode should be ACTIVE
+ PAP - -> PDP : Set PDP mode as ACTIVE
+ ref over PDP: Execute Policies in\nACTIVE Mode
+else PDP Mode should be SAFE
+ PAP - -> PDP : Set PDP mode as SAFE
+ ref over PDP: Execute Policies in\nSAFE Mode
+else PDP Mode should be TEST
+ PAP - -> PDP : Set PDP mode as TEST
+ ref over PDP: Execute Policies in\nTEST Mode
+end
+
+PAP - -> PolicyDB: Update PDP metadata
+@enduml
+
+PlantUML version 1.2019.07beta1(Unknown compile time)
+(GPL source distribution)
+Java Runtime: Java(TM) SE Runtime Environment
+JVM: Java HotSpot(TM) 64-Bit Server VM
+Java Version: 1.7.0_25-b15
+Operating System: Linux
+Default Encoding: UTF-8
+Language: en
+Country: US
+--></g></svg> \ No newline at end of file