Ok, done.
Dan Creswell wrote:
Solid - probably ought to be a constructor that doesn't add defaults
too.....and maybe a note about thread safety on add.
On 7 February 2011 04:29, Peter Firmstone <[email protected]> wrote:
Dan Creswell wrote:
Sorry, what you meant was the builder generates a default array or Set of
Entry classes required to support the platform, additional Entry classes
the
client needs can be added, then it builds the array to pass as a
parameter
to the lookup service.
Yep.
How's this?
Cheers,
Peter.
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.river.api.lookup;
import java.util.HashSet;
import java.util.Set;
import net.jini.lookup.entry.Address;
import net.jini.lookup.entry.Comment;
import net.jini.lookup.entry.Location;
import net.jini.lookup.entry.Name;
import net.jini.lookup.entry.ServiceInfo;
import net.jini.lookup.entry.Status;
import net.jini.lookup.entry.UIDescriptor;
/**
* A little builder utility class that creates an array of Entry classes to
* be used as a parameter for StreamServiceRegistrar. All the platform
* Entry's are included.
*
* Suggested by Dan Creswell.
* @author peter
*/
public class DefaultEntries {
private final Set<Class> entrys;
public DefaultEntries() {
entrys = new HashSet<Class>(16);
add(Comment.class);
add(Location.class);
add(Name.class);
add(ServiceInfo.class);
add(Status.class);
add(UIDescriptor.class);
add(Address.class);
}
public DefaultEntries add(Class cl){
entrys.add(cl);
return this;
}
public Class[] getEntries(){
return entrys.toArray(new Class[entrys.size()]);
}
}