Revision 19900 branches/v10/extensions/extPublish/src/org/gvsig/publish/serversmodel/Publication.java

View differences:

Publication.java
43 43
import java.util.Observable;
44 44
import java.util.Observer;
45 45

  
46
import org.gvsig.publish.IPublishPersistence;
46 47
import org.gvsig.publish.PublishLogger;
47 48
import org.gvsig.publish.PublishRegister;
48 49
import org.gvsig.publish.infoproject.IProjectInfo;
49 50

  
50
import com.iver.utiles.IPersistance;
51 51
import com.iver.utiles.XMLEntity;
52 52

  
53
public class Publication extends Observable implements IPersistance, Observer {
53
public class Publication extends Observable implements IPublishPersistence, Observer {
54 54
	
55
	
56 55
	/*
57
	 * Relations
56
	 * Associations
58 57
	 */
59 58
	private Server server = null;
60 59
	private IProjectInfo iproject = null;
......
91 90
		
92 91
		//init variables
93 92
		this.server = s;
93
		this.server.setProjectInfo(getProjectInfo());
94 94
		
95 95
		//notify publication observers
96 96
		setChanged();
......
135 135
	 */
136 136
	public XMLEntity getXMLEntity() {
137 137
		XMLEntity xml=new XMLEntity();
138
		//put version
139
		xml.putProperty("className", getClassName());
138
		//put version and name		
139
		xml.setName(getClassName());
140
		xml.putProperty("version", getVersion());
140 141
		//put properties
141 142
		xml.putProperty("title", getTitle());
142 143
		//TODO: check if getserver() is null
......
149 150
	 */
150 151
	public void setXMLEntity(XMLEntity xml) {
151 152
		//check version
152
		String classid = xml.getStringProperty("className");		
153
		if (!classid.equals(getClassName()) ){
153
		int version = xml.getIntProperty("version");		
154
		if (version != getVersion()){
155
			PublishLogger.getLog().error("ERROR: " + getVersion() + ": the version doesn't match!");
154 156
			return;
155 157
		}	
156 158
		//creates only the first server
157 159
		XMLEntity xmlChild=xml.getChild(0);		
158
		Server s = PublishRegister.register().getServer(xmlChild.getStringProperty(Server.SERVER_TYPE_KEY));		
160
		String server_type = xmlChild.getStringProperty("registertag");
161
		Server s = PublishRegister.register().getServer(server_type);		
159 162
		if (s==null){			
160
			PublishLogger.getLog().error("ERROR Publication: I can't create the server from persistence");
163
			PublishLogger.getLog().error("ERROR " + getVersion()+ ": I can't create the server from persistence");
161 164
		}else{
162 165
			s.setProjectInfo(iproject);			
163 166
			s.setXMLEntity(xmlChild);
164 167
			setServer(s);
165 168
		}				
166 169
	}
170
	/*
171
	 * (non-Javadoc)
172
	 * @see com.iver.utiles.IPersistance#getClassName()
173
	 */
167 174
	public String getClassName() {		
168
		return CLASSID_VALUE;
175
		return "Publication";
169 176
	}
177
	/*
178
	 * (non-Javadoc)
179
	 * @see org.gvsig.publish.IPublishPersistence#getVersion()
180
	 */
181
	public int getVersion() {
182

  
183
		return 1;
184
	}
170 185
}

Also available in: Unified diff