/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.cms.core.content.binary; import java.util.Collection; import org.jdom.Element; import com.enonic.cms.core.content.ContentVersionEntity; public class BinaryDataXmlCreator { public Element createBinariesElement( final ContentVersionEntity contentVersion ) { final Element binariesElement = new Element( "binaries" ); int addCount = 0; if ( contentVersion.hasContentBinaryData() ) { final Collection<ContentBinaryDataEntity> contentBinaries = contentVersion.getContentBinaryData(); for ( ContentBinaryDataEntity contentBinary : contentBinaries ) { Element binaryElement = doCreateBinaryElement( contentBinary ); binariesElement.addContent( binaryElement ); addCount++; } } binariesElement.setAttribute( "count", Integer.toString( addCount ) ); return binariesElement; } private Element doCreateBinaryElement( final ContentBinaryDataEntity contentBinaryData ) { final BinaryDataEntity binaryData = contentBinaryData.getBinaryData(); final Element binaryEl = new Element( "binary" ); binaryEl.setAttribute( "filename", binaryData.getName() ); binaryEl.setAttribute( "filesize", Integer.toString( binaryData.getSize() ) ); binaryEl.setAttribute( "key", Integer.toString( binaryData.getKey() ) ); final String label = contentBinaryData.getLabel(); if ( label != null && label.length() > 0 ) { binaryEl.setAttribute( "label", label ); } return binaryEl; } }