Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package org.nakedobjects.plugins.xml.objectstore.internal.services.xml;
 
 
    final SerialOid oid;
    final String id;
    public ServiceElement(final SerialOid oidfinal String id) {
        Assert.assertNotNull("oid"oid);
        Assert.assertNotNull("id"id);
        this. = oid;
        this. = id;
    }
class ServiceHandler extends DefaultHandler {
    Vector services = new Vector();
    @Override
    public void startElement(final String nsfinal String namefinal String tagNamefinal Attributes attrs)
            throws SAXException {
        if (tagName.equals("service")) {
            final long oid = Long.valueOf(attrs.getValue("oid"), 16).longValue();
            final String id = attrs.getValue("id");
            final ServiceElement service = new ServiceElement(SerialOid.createPersistent(oid), id);
            .addElement(service);
        }
    }
public class XmlServiceManager implements ServiceManager {
    private static final String SERVICES_FILE_NAME = "services";
    private Vector services;
    private final XmlFile xmlFile;
    public XmlServiceManager(final XmlFile xmlFile) {
        this. = xmlFile;
    }
    private String encodedOid(final SerialOid oid) {
        return Long.toHexString(oid.getSerialNo()).toUpperCase();
    }
    public Oid getOidForService(final String name) {
        for (final Enumeration e = .elements(); e.hasMoreElements();) {
            final ServiceElement element = (ServiceElemente.nextElement();
            if (element.id.equals(name)) {
                return element.oid;
            }
        }
        return null;
    }
    public void loadServices() {
        final ServiceHandler handler = new ServiceHandler();
        .parse(handler);
         = handler.services;
    }
    public void registerService(final String namefinal Oid oid) {
        final SerialOid soid = (SerialOidoid;
        final ServiceElement element = new ServiceElement(soidname);
        .addElement(element);
        saveServices();
    }
    public final void saveServices() {
        final StringBuffer xml = new StringBuffer();
        final String tag = ;
        xml.append("<" + tag + ">\n");
        for (final Enumeration e = .elements(); e.hasMoreElements();) {
            final ServiceElement element = (ServiceElemente.nextElement();
            xml.append("  <service oid=\"");
            xml.append(encodedOid(element.oid));
            xml.append("\" id=\"");
            xml.append(element.id);
            xml.append("\" />\n");
        }
        xml.append("</" + tag + ">\n");
        .writeXml(xml);
    }
// Copyright (c) Naked Objects Group Ltd.
New to GrepCode? Check out our FAQ X