@Override
 public int hashCode() {
   int result = 17;
   result = 31 * result + provider.hashCode();
   result = 31 * result + pid.hashCode();
   result = 31 * result + (factory ? 1 : 0);
   return result;
 }