Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/resource/java/source/SourceMember.java')
-rw-r--r--jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/resource/java/source/SourceMember.java90
1 files changed, 57 insertions, 33 deletions
diff --git a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/resource/java/source/SourceMember.java b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/resource/java/source/SourceMember.java
index 042933f1bb..b4bc89f2e1 100644
--- a/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/resource/java/source/SourceMember.java
+++ b/jaxb/plugins/org.eclipse.jpt.jaxb.core/src/org/eclipse/jpt/jaxb/core/internal/resource/java/source/SourceMember.java
@@ -18,7 +18,6 @@ import org.eclipse.jpt.jaxb.core.resource.java.Annotation;
import org.eclipse.jpt.jaxb.core.resource.java.JavaResourceMember;
import org.eclipse.jpt.jaxb.core.resource.java.JavaResourceNode;
import org.eclipse.jpt.utility.internal.CollectionTools;
-import org.eclipse.jpt.utility.internal.iterables.FilteringIterable;
/**
* Java source member (annotations, "persistable")
@@ -28,10 +27,14 @@ abstract class SourceMember<M extends Member>
implements JavaResourceMember
{
- boolean persistable;
-
boolean final_; // 'final' is a reserved word
+ boolean transient_; // 'transient' is a reserved word
+
+ boolean public_; // 'public' is a reserved word
+
+ boolean static_; // 'static' is a reserved word
+
// ********** construction/initialization **********
@@ -42,17 +45,21 @@ abstract class SourceMember<M extends Member>
@Override
public void initialize(CompilationUnit astRoot) {
super.initialize(astRoot);
- this.persistable = this.buildPersistable(astRoot);
IBinding binding = this.annotatedElement.getBinding(astRoot);
this.final_ = this.buildFinal(binding);
+ this.transient_ = this.buildTransient(binding);
+ this.public_ = this.buildPublic(binding);
+ this.static_ = this.buildStatic(binding);
}
@Override
public void synchronizeWith(CompilationUnit astRoot) {
super.synchronizeWith(astRoot);
- this.syncPersistable(this.buildPersistable(astRoot));
IBinding binding = this.annotatedElement.getBinding(astRoot);
this.syncFinal(this.buildFinal(binding));
+ this.syncTransient(this.buildTransient(binding));
+ this.syncPublic(this.buildPublic(binding));
+ this.syncStatic(this.buildStatic(binding));
}
@@ -82,22 +89,6 @@ abstract class SourceMember<M extends Member>
}
- // ********** persistable **********
-
- public boolean isPersistable() {
- return this.persistable;
- }
-
- private void syncPersistable(boolean astPersistable) {
- boolean old = this.persistable;
- this.persistable = astPersistable;
- this.firePropertyChanged(PERSISTABLE_PROPERTY, old, astPersistable);
- }
-
- private boolean buildPersistable(CompilationUnit astRoot) {
- return this.annotatedElement.isPersistable(astRoot);
- }
-
// ***** final
public boolean isFinal() {
return this.final_;
@@ -113,6 +104,51 @@ abstract class SourceMember<M extends Member>
return (binding == null) ? false : Modifier.isFinal(binding.getModifiers());
}
+ // ***** transient
+ public boolean isTransient() {
+ return this.transient_;
+ }
+
+ private void syncTransient(boolean astTransient) {
+ boolean old = this.transient_;
+ this.transient_ = astTransient;
+ this.firePropertyChanged(TRANSIENT_PROPERTY, old, astTransient);
+ }
+
+ private boolean buildTransient(IBinding binding) {
+ return (binding == null) ? false : Modifier.isTransient(binding.getModifiers());
+ }
+
+ // ***** public
+ public boolean isPublic() {
+ return this.public_;
+ }
+
+ private void syncPublic(boolean astPublic) {
+ boolean old = this.public_;
+ this.public_ = astPublic;
+ this.firePropertyChanged(PUBLIC_PROPERTY, old, astPublic);
+ }
+
+ private boolean buildPublic(IBinding binding) {
+ return (binding == null) ? false : Modifier.isPublic(binding.getModifiers());
+ }
+
+ // ***** static
+ public boolean isStatic() {
+ return this.static_;
+ }
+
+ private void syncStatic(boolean astStatic) {
+ boolean old = this.static_;
+ this.static_ = astStatic;
+ this.firePropertyChanged(STATIC_PROPERTY, old, astStatic);
+ }
+
+ private boolean buildStatic(IBinding binding) {
+ return (binding == null) ? false : Modifier.isStatic(binding.getModifiers());
+ }
+
// ********** miscellaneous **********
@@ -121,18 +157,6 @@ abstract class SourceMember<M extends Member>
}
public void resolveTypes(CompilationUnit astRoot) {
- this.syncPersistable(this.buildPersistable(astRoot));
}
- /**
- * convenience method
- */
- <T extends JavaResourceMember> Iterable<T> getPersistableMembers(Iterable<T> members) {
- return new FilteringIterable<T>(members) {
- @Override
- protected boolean accept(T m) {
- return m.isPersistable();
- }
- };
- }
}

Back to the top