/* * Copyright (C) 2010. * All rights reserved. */ package ro.isdc.wro.model.resource.support.naming; import java.io.IOException; import java.io.InputStream; /** * Used to version a resource name somehow. There could be many strategies, like timestamp, content hashing, etc. * * @author Alex Objelean */ public interface NamingStrategy { /** * Creates a new name of the resource which encodes a version. * * @param originalName original name of the resource. * @param inputStream the stream of the content to rename. * @return new name of the resource with version encoded. * @throws IOException if there are stream reading problem. */ public String rename(final String originalName, final InputStream inputStream) throws IOException; }