* See the License for the specific language governing permissions and
* limitations under the License.
* ============LICENSE_END============================================
+ * Modifications copyright (c) 2019 AT&T
* ===================================================================
*
*/
package org.onap.clamp.clds.util.drawing;
import java.util.List;
+
import org.apache.batik.svggen.SVGGraphics2D;
import org.onap.clamp.clds.sdc.controller.installer.MicroService;
import org.onap.clamp.clds.util.XmlTools;
@Component
public class SvgFacade {
+ /**
+ * Generate the SVG images from the microservice Chain.
+ *
+ * @param microServicesChain THe chain of microservices
+ * @return A String containing the SVG
+ */
public String getSvgImage(List<MicroService> microServicesChain) {
SVGGraphics2D svgGraphics2D = new SVGGraphics2D(XmlTools.createEmptySvgDocument());
Document document = XmlTools.createEmptySvgDocument();
DocumentBuilder dp = new DocumentBuilder(document, svgGraphics2D.getDOMFactory());
- Painter p = new Painter(svgGraphics2D, dp);
- ClampGraphBuilder cgp = new ClampGraphBuilder(p).collector("VES");
- for(MicroService ms : microServicesChain) {
- cgp = cgp.microService(ms.getName());
- }
- ClampGraph cg = cgp.policy("Policy").build();
- return cg.getAsSVG();
+ Painter painter = new Painter(svgGraphics2D, dp);
+ ClampGraphBuilder cgp = new ClampGraphBuilder(painter).collector("VES");
+ cgp.addAllMicroServices(microServicesChain);
+ ClampGraph cg = cgp.policy("OperationalPolicy").build();
+ return cg.getAsSvg();
}
}