}
public RepositoryItemMetadata addDeploymentContent(String vfsPath, InputStream contentIS) throws IOException
{
RepositoryItemMetadata item = this.contentManager.getItemForAddition(vfsPath);
RepositoryContentMetadata updated = this.contentManager.getContentMetadataForAdd(item, contentIS);
RepositoryContentMetadata official = this.contentManager.getOfficialContentMetadata();
LocalContentModificationGenerator generator = new LocalContentModificationGenerator();
List<ContentModification> modifications;
try
{
modifications = generator.getModificationList(official, updated);
}
catch (InconsistentRepositoryStructureException e)
{
throw new IllegalStateException("Incompatible structure change", e);
}
installModifications(modifications, updated);
official = this.contentManager.getOfficialContentMetadata();
RepositoryRootMetadata rrmd = official.getRepositoryRootMetadata(item.getRootName());
return rrmd.getItemMetadata(item.getRelativePathElements());
}