The longer, the better ;)
encodeFilename isn't clear for what (web?) and why the parameter is projectName when the method is called Filename...