woproject/projects/woenvironment/src/java/org/objectstyle/woenvironment/pb PBXProject.java,1.4,1.5
[email protected] Thu, 6 Apr 2006 14:23:07 -0700 (PDT)
| Newsgroups | gmane.comp.web.webobjects.woproject.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/woproject/woproject/projects/woenvironment/src/java/org/objectstyle/woenvironment/pb
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9166/projects/woenvironment/src/java/org/objectstyle/woenvironment/pb
Modified Files:
PBXProject.java
Log Message:
fix for http://objectstyle.org/jira/browse/WOL-226
Patched by Bod Schwarzmann
Index: PBXProject.java
===================================================================
RCS file: /cvsroot/woproject/woproject/projects/woenvironment/src/java/org/objectstyle/woenvironment/pb/PBXProject.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- PBXProject.java 25 Mar 2006 01:14:19 -0000 1.4
+++ PBXProject.java 6 Apr 2006 21:22:35 -0000 1.5
@@ -79,14 +79,22 @@
_sourceRefs.add( path );
}
- public void addFileReference( String path ) {
- _fileRefs.add( path );
+ public void addResourceFileReference( String path ) {
+ _resourceFileRefs.add( path );
}
- public void addFolderReference( String path ) {
- _folderRefs.add( path );
+ public void addResourceFolderReference( String path ) {
+ _resourceFolderRefs.add( path );
}
+ public void addWSResourceFileReference( String path ) {
+ _wsresourceFileRefs.add( path );
+ }
+
+ public void addWSResourceFolderReference( String path ) {
+ _wsresourceFolderRefs.add( path );
+ }
+
public void addFrameworkReference( String path ) {
_frameworkRefs.add( path );
}
@@ -110,11 +118,13 @@
ArrayList sourceBuildFileIDs = new ArrayList();
ArrayList resourceBuildFileIDs = new ArrayList();
- ArrayList frameworkBuildFileIDs = new ArrayList();
+ ArrayList wsresourceBuildFileIDs = new ArrayList();
+ ArrayList frameworkBuildFileIDs = new ArrayList();
ArrayList sourceFileIDs = new ArrayList();
ArrayList resourceFileIDs = new ArrayList();
- ArrayList frameworkFileIDs = new ArrayList();
+ ArrayList wsresourceFileIDs = new ArrayList();
+ ArrayList frameworkFileIDs = new ArrayList();
// Walk refs, creating the appropriate reference type and an associated
// build file for each and adding it to the objects table and group children list.
@@ -134,7 +144,8 @@
sourceBuildFileIDs.add(objectsTable.insert(newBuildFile(refID)));
}
- it = _fileRefs.iterator();
+
+ it = _resourceFileRefs.iterator();
while( it.hasNext() ) {
path = (String) it.next();
if(path.indexOf(projectPath) == 0) {
@@ -147,7 +158,7 @@
resourceBuildFileIDs.add(objectsTable.insert(newBuildFile(refID)));
}
- it = _folderRefs.iterator();
+ it = _resourceFolderRefs.iterator();
while( it.hasNext() ) {
path = (String) it.next();
if(path.indexOf(projectPath) == 0) {
@@ -160,6 +171,34 @@
resourceBuildFileIDs.add(objectsTable.insert(newBuildFile(refID)));
}
+
+ it = _wsresourceFileRefs.iterator();
+ while( it.hasNext() ) {
+ path = (String) it.next();
+ if(path.indexOf(projectPath) == 0) {
+ path = path.substring(projectPath.length()+1);
+ }
+ File file = new File(path);
+ Map reference = newFileReference(file.getName(), path);
+ ObjectsTable.ID refID = objectsTable.insert(reference);
+ wsresourceFileIDs.add(refID);
+ wsresourceBuildFileIDs.add(objectsTable.insert(newBuildFile(refID)));
+ }
+
+ it = _wsresourceFolderRefs.iterator();
+ while( it.hasNext() ) {
+ path = (String) it.next();
+ if(path.indexOf(projectPath) == 0) {
+ path = path.substring(projectPath.length()+1);
+ }
+ File file = new File(path);
+ Map reference = newFolderReference(file.getName(), path);
+ ObjectsTable.ID refID = objectsTable.insert(reference);
+ wsresourceFileIDs.add(refID);
+ wsresourceBuildFileIDs.add(objectsTable.insert(newBuildFile(refID)));
+ }
+
+
it = _frameworkRefs.iterator();
while( it.hasNext() ) {
path = (String) it.next();
@@ -170,9 +209,10 @@
}
ArrayList childrenIDs = new ArrayList();
- childrenIDs.add(objectsTable.insert(newGroup( "Sources", sourceFileIDs)));
+ childrenIDs.add(objectsTable.insert(newGroup( "Sources", sourceFileIDs)));
childrenIDs.add(objectsTable.insert(newGroup( "Resources", resourceFileIDs)));
- childrenIDs.add(objectsTable.insert(newGroup( "Frameworks", frameworkFileIDs)));
+ childrenIDs.add(objectsTable.insert(newGroup( "WebServerResources", wsresourceFileIDs)));
+ childrenIDs.add(objectsTable.insert(newGroup( "Frameworks", frameworkFileIDs)));
// Create the PBXGroup and add it to the objects table.
ObjectsTable.ID mainGroupID = objectsTable.insert( newGroup( "Root", childrenIDs) );
@@ -182,7 +222,8 @@
if (hasBuildPhases()) {
buildPhaseIDs.add( objectsTable.insert( newSourcesBuildPhase( sourceBuildFileIDs)));
buildPhaseIDs.add( objectsTable.insert( newResourcesBuildPhase( resourceBuildFileIDs)));
- buildPhaseIDs.add( objectsTable.insert( newFrameworkBuildPhase( frameworkBuildFileIDs)));
+ buildPhaseIDs.add( objectsTable.insert( newWSResourcesBuildPhase( wsresourceBuildFileIDs)));
+ buildPhaseIDs.add( objectsTable.insert( newFrameworkBuildPhase( frameworkBuildFileIDs)));
}
// Create the PBXToolTarget and add it to the objects table and
@@ -202,8 +243,10 @@
//---------------------------------------------------------------
// Implementation stuff.
- protected ArrayList _folderRefs = new ArrayList();
- protected ArrayList _fileRefs = new ArrayList();
+ protected ArrayList _resourceFolderRefs = new ArrayList();
+ protected ArrayList _resourceFileRefs = new ArrayList();
+ protected ArrayList _wsresourceFolderRefs = new ArrayList();
+ protected ArrayList _wsresourceFileRefs = new ArrayList();
protected ArrayList _frameworkRefs = new ArrayList();
protected ArrayList _sourceRefs = new ArrayList();
@@ -257,6 +300,12 @@
"files", buildFileIDs });
}
+ protected Map newWSResourcesBuildPhase( List buildFileIDs ) {
+ return map( new Object[] {
+ "isa", "PBXResourcesBuildPhase",
+ "files", buildFileIDs });
+ }
+
protected Map newSourcesBuildPhase( List buildFileIDs ) {
return map( new Object[] {
"isa", "PBXSourcesBuildPhase",
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642