public NetView(NetView other,int viewId){
  this.creator=other.creator;
  this.viewId=viewId;
  this.members=new ArrayList<>(other.members);
  this.hashedMembers=new HashSet<>(other.members);
  this.failureDetectionPorts=new int[other.failureDetectionPorts.length];
  System.arraycopy(other.failureDetectionPorts,0,this.failureDetectionPorts,0,other.failureDetectionPorts.length);
  this.shutdownMembers=new HashSet<>(other.shutdownMembers);
  this.crashedMembers=new HashSet<>(other.crashedMembers);
  this.publicKeys=new HashMap<>(other.publicKeys);
}

public NetView ( NetView other , int viewId ) { this . creator = other . creator ; this . viewId = viewId ; this . members = new ArrayList < > ( other . members ) ; this . hashedMembers = new HashSet < > ( other . members ) ; this . failureDetectionPorts = new int [ other . failureDetectionPorts . length ] ; System . arraycopy ( other . failureDetectionPorts , 0 , this . failureDetectionPorts , 0 , other . failureDetectionPorts . length ) ; this . shutdownMembers = new HashSet < > ( other . shutdownMembers ) ; this . crashedMembers = new HashSet < > ( other . crashedMembers ) ; this . publicKeys = new HashMap < > ( other . publicKeys ) ; }
create a new view with the contents of the given view and the specified view id
