{
if (path == null)
throw new IllegalArgumentException("Null path");
List<String> pkgs = PathTokenizer.getTokens(path);
AssembledDirectoryHandler dir = directory;
for (int i = 0; i < pkgs.size() - 1; i++)
{
AssembledDirectoryHandler next = (AssembledDirectoryHandler) dir.findChild(pkgs.get(i));
if (next == null)
{
try
{
next = new AssembledDirectoryHandler(dir.getVFSContext(), dir, pkgs.get(i));
}
catch (IOException e)
{
throw new RuntimeException(e);
}