-
Notifications
You must be signed in to change notification settings - Fork 162
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Updated JavaParser to include optional JavaResources if resources add…
…on is installed
- Loading branch information
1 parent
1dd1194
commit 6a5427e
Showing
13 changed files
with
682 additions
and
4 deletions.
There are no files selected for viewing
36 changes: 36 additions & 0 deletions
36
dependencies/api/src/main/java/org/jboss/forge/dependencies/DependencyException.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
/* | ||
* Copyright 2012 Red Hat, Inc. and/or its affiliates. | ||
* | ||
* Licensed under the Eclipse Public License version 1.0, available at | ||
* http://www.eclipse.org/legal/epl-v10.html | ||
*/ | ||
package org.jboss.forge.dependencies; | ||
|
||
/** | ||
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> | ||
* | ||
*/ | ||
public class DependencyException extends RuntimeException | ||
{ | ||
private static final long serialVersionUID = 3858719629364658345L; | ||
|
||
public DependencyException() | ||
{ | ||
} | ||
|
||
public DependencyException(String message) | ||
{ | ||
super(message); | ||
} | ||
|
||
public DependencyException(Throwable e) | ||
{ | ||
super(e); | ||
} | ||
|
||
public DependencyException(String message, Throwable e) | ||
{ | ||
super(message, e); | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
79 changes: 79 additions & 0 deletions
79
parser-java/api/src/main/java/org/jboss/forge/parser/resources/EnumConstantResource.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
/* | ||
* Copyright 2012 Red Hat, Inc. and/or its affiliates. | ||
* | ||
* Licensed under the Eclipse Public License version 1.0, available at | ||
* http://www.eclipse.org/legal/epl-v10.html | ||
*/ | ||
|
||
package org.jboss.forge.parser.resources; | ||
|
||
import java.util.Collections; | ||
import java.util.List; | ||
|
||
import org.jboss.forge.facets.Facet; | ||
import org.jboss.forge.parser.java.EnumConstant; | ||
import org.jboss.forge.parser.java.JavaEnum; | ||
import org.jboss.forge.resource.Resource; | ||
import org.jboss.forge.resource.ResourceFactory; | ||
import org.jboss.forge.resource.VirtualResource; | ||
|
||
public class EnumConstantResource extends VirtualResource<EnumConstant<JavaEnum>> | ||
{ | ||
private final EnumConstant<JavaEnum> enumConstant; | ||
|
||
public EnumConstantResource(final ResourceFactory factory, final Resource<?> parent, | ||
final EnumConstant<JavaEnum> enumConstant) | ||
{ | ||
super(factory, parent); | ||
this.enumConstant = enumConstant; | ||
} | ||
|
||
@Override | ||
public Resource<EnumConstant<JavaEnum>> createFrom(final EnumConstant<JavaEnum> file) | ||
{ | ||
throw new RuntimeException("not implemented"); | ||
} | ||
|
||
@Override | ||
protected List<Resource<?>> doListResources() | ||
{ | ||
return Collections.emptyList(); | ||
} | ||
|
||
@Override | ||
public EnumConstant<JavaEnum> getUnderlyingResourceObject() | ||
{ | ||
return enumConstant; | ||
} | ||
|
||
@Override | ||
public String getName() | ||
{ | ||
return enumConstant.getName(); | ||
} | ||
|
||
@Override | ||
public String toString() | ||
{ | ||
return enumConstant.toString(); | ||
} | ||
|
||
@Override | ||
public boolean delete() throws UnsupportedOperationException | ||
{ | ||
throw new UnsupportedOperationException("Deleting Enum constants is not implemented."); | ||
} | ||
|
||
@Override | ||
public boolean delete(boolean recursive) throws UnsupportedOperationException | ||
{ | ||
throw new UnsupportedOperationException("Deleting Enum constants is not implemented."); | ||
} | ||
|
||
@Override | ||
public boolean supports(Class<? extends Facet<?>> type) | ||
{ | ||
return false; | ||
} | ||
|
||
} |
92 changes: 92 additions & 0 deletions
92
parser-java/api/src/main/java/org/jboss/forge/parser/resources/JavaFieldResource.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
/* | ||
* Copyright 2012 Red Hat, Inc. and/or its affiliates. | ||
* | ||
* Licensed under the Eclipse Public License version 1.0, available at | ||
* http://www.eclipse.org/legal/epl-v10.html | ||
*/ | ||
|
||
package org.jboss.forge.parser.resources; | ||
|
||
import java.util.Collections; | ||
import java.util.List; | ||
|
||
import org.jboss.forge.facets.Facet; | ||
import org.jboss.forge.parser.java.Field; | ||
import org.jboss.forge.parser.java.FieldHolder; | ||
import org.jboss.forge.parser.java.JavaSource; | ||
import org.jboss.forge.resource.Resource; | ||
import org.jboss.forge.resource.ResourceFactory; | ||
|
||
/** | ||
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> | ||
*/ | ||
public class JavaFieldResource extends JavaMemberResource<Field<? extends JavaSource<?>>> | ||
{ | ||
private final Field<? extends JavaSource<?>> field; | ||
|
||
public JavaFieldResource(final ResourceFactory factory, final JavaResource parent, | ||
final Field<? extends JavaSource<?>> field) | ||
{ | ||
super(factory, parent, field); | ||
this.field = field; | ||
} | ||
|
||
@Override | ||
public Resource<Field<? extends JavaSource<?>>> createFrom(final Field<? extends JavaSource<?>> file) | ||
{ | ||
throw new RuntimeException("not implemented"); | ||
} | ||
|
||
@Override | ||
protected List<Resource<?>> doListResources() | ||
{ | ||
return Collections.emptyList(); | ||
} | ||
|
||
@Override | ||
public Field<? extends JavaSource<?>> getUnderlyingResourceObject() | ||
{ | ||
return field; | ||
} | ||
|
||
@Override | ||
public String getName() | ||
{ | ||
return field.getName() + "::" + field.getType(); | ||
} | ||
|
||
@Override | ||
public String toString() | ||
{ | ||
return field.toString(); | ||
} | ||
|
||
@Override | ||
@SuppressWarnings({ "unchecked", "rawtypes" }) | ||
public boolean delete() throws UnsupportedOperationException | ||
{ | ||
JavaSource<?> origin = field.getOrigin(); | ||
if (origin instanceof FieldHolder) | ||
{ | ||
((FieldHolder) origin).removeField(field); | ||
if (!((FieldHolder) origin).hasField(field)) | ||
{ | ||
((JavaResource) this.getParent()).setContents(origin.toString()); | ||
return true; | ||
} | ||
} | ||
return false; | ||
} | ||
|
||
@Override | ||
public boolean delete(final boolean recursive) throws UnsupportedOperationException | ||
{ | ||
return delete(); | ||
} | ||
|
||
@Override | ||
public boolean supports(Class<? extends Facet<?>> type) | ||
{ | ||
return false; | ||
} | ||
} |
61 changes: 61 additions & 0 deletions
61
parser-java/api/src/main/java/org/jboss/forge/parser/resources/JavaMemberResource.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
/* | ||
* Copyright 2012 Red Hat, Inc. and/or its affiliates. | ||
* | ||
* Licensed under the Eclipse Public License version 1.0, available at | ||
* http://www.eclipse.org/legal/epl-v10.html | ||
*/ | ||
|
||
package org.jboss.forge.parser.resources; | ||
|
||
import java.util.Collections; | ||
import java.util.List; | ||
|
||
import org.jboss.forge.parser.java.Member; | ||
import org.jboss.forge.resource.Resource; | ||
import org.jboss.forge.resource.ResourceFactory; | ||
import org.jboss.forge.resource.VirtualResource; | ||
|
||
/** | ||
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a> | ||
*/ | ||
@SuppressWarnings("rawtypes") | ||
public abstract class JavaMemberResource<T extends Member> extends VirtualResource<T> | ||
{ | ||
private final T member; | ||
|
||
public JavaMemberResource(ResourceFactory factory, final Resource<?> parent, final T member) | ||
{ | ||
super(factory, parent); | ||
this.member = member; | ||
} | ||
|
||
@Override | ||
public Resource<T> createFrom(final T file) | ||
{ | ||
throw new RuntimeException("not implemented"); | ||
} | ||
|
||
@Override | ||
protected List<Resource<?>> doListResources() | ||
{ | ||
return Collections.emptyList(); | ||
} | ||
|
||
@Override | ||
public T getUnderlyingResourceObject() | ||
{ | ||
return member; | ||
} | ||
|
||
@Override | ||
public String getName() | ||
{ | ||
return member.getName(); | ||
} | ||
|
||
@Override | ||
public String toString() | ||
{ | ||
return member.toString(); | ||
} | ||
} |
Oops, something went wrong.