package org.mobicents.slee.sippresence.server.subscription.rules; import java.util.HashSet; import java.util.Set; public class OMAPresRule extends PresRule { /** * */ private static final long serialVersionUID = 865547623453835201L; private boolean provideBarringState; private GeoPrivTransformation provideGeopriv = GeoPrivTransformation.false_; private boolean provideNetworkAvailability; private boolean provideRegistrationState; private Set<String> serviceIDs; private boolean provideSessionParticipation; private boolean provideWillingness; /** * combines this OMA pres rule with another. * @param other */ public void combine(OMAPresRule other) { super.combine(other); this.provideBarringState = this.provideBarringState || other.provideBarringState; if (this.provideGeopriv.getValue() < other.provideGeopriv.getValue()) { this.provideGeopriv = other.provideGeopriv; } this.provideNetworkAvailability = this.provideNetworkAvailability || other.provideNetworkAvailability; this.provideRegistrationState = this.provideRegistrationState || other.provideRegistrationState; if (other.serviceIDs != null) { getServiceIDs().addAll(other.serviceIDs); } this.provideSessionParticipation = this.provideSessionParticipation || other.provideSessionParticipation; this.provideWillingness = this.provideWillingness || other.provideWillingness; } public boolean isProvideBarringState() { return provideBarringState; } public void setProvideBarringState(boolean provideBarringState) { this.provideBarringState = provideBarringState; } public GeoPrivTransformation getProvideGeopriv() { return provideGeopriv; } public void setProvideGeopriv(GeoPrivTransformation provideGeopriv) { this.provideGeopriv = provideGeopriv; } public boolean isProvideNetworkAvailability() { return provideNetworkAvailability; } public void setProvideNetworkAvailability(boolean provideNetworkAvailability) { this.provideNetworkAvailability = provideNetworkAvailability; } public boolean isProvideRegistrationState() { return provideRegistrationState; } public void setProvideRegistrationState(boolean provideRegistrationState) { this.provideRegistrationState = provideRegistrationState; } public boolean isProvideSessionParticipation() { return provideSessionParticipation; } public void setProvideSessionParticipation(boolean provideSessionParticipation) { this.provideSessionParticipation = provideSessionParticipation; } public boolean isProvideWillingness() { return provideWillingness; } public void setProvideWillingness(boolean provideWillingness) { this.provideWillingness = provideWillingness; } public Set<String> getServiceIDs() { if (serviceIDs == null) { serviceIDs = new HashSet<String>(); } return serviceIDs; } }