/** * Copyright (c) 2005-2011 by Appcelerator, Inc. All Rights Reserved. * Licensed under the terms of the Eclipse Public License (EPL). * Please see the license.txt included with this distribution for details. * Any modifications to this file must keep this entire header intact. */ package org.python.pydev.core; import java.io.File; import com.aptana.shared_core.string.FastStringBuffer; /** * This is the modules key that should be used if we have an entry in a zip file. * * @author Fabio */ public class ModulesKeyForZip extends ModulesKey { /** * 1L = just name and file * 2L = + zipModulePath */ private static final long serialVersionUID = 2L; /** * This should be null if it's from a file in the filesystem, now, if we're dealing with a zip file, * the file should be the zip file and this the path under which it was found in the zip file. * * Some cases can be considered: * - if it was found from jython this is a dir from the zip file * - if it was from a zip file from python this is a the .py file path inside the zip file */ public String zipModulePath; /** * Determines if this module was created because it was found as a file or a folder. */ public boolean isFile; /** * Creates the module key. File may be null */ public ModulesKeyForZip(String name, File f, String zipModulePath, boolean isFile) { super(name, f); this.zipModulePath = zipModulePath; this.isFile = isFile; } @Override public String toString() { FastStringBuffer ret = new FastStringBuffer(name, 40); if (file != null) { ret.append(" - "); ret.appendObject(file); } if (zipModulePath != null) { ret.append(" - zip path:"); ret.append(zipModulePath); } return ret.toString(); } }