blob: 8736c51a067707a94efd7ce7108649bfef94968e [file] [log] [blame]
/*
********************************************************************************
* Copyright (c) 2014, 2018 Orange.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
********************************************************************************
ModuleClass : OpenLevelAnnc
This ModuleClass provides the capabilities to control and monitor the open status of an entity, for example a curtain.
Created: 2018-06-29 17:19:53
*/
package org.eclipse.om2m.commons.resource.flexcontainerspec;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import org.eclipse.om2m.commons.resource.AbstractFlexContainerAnnc;
@XmlRootElement(name = OpenLevelFlexContainerAnnc.SHORT_NAME, namespace = "http://www.onem2m.org/xml/protocols/homedomain")
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = OpenLevelFlexContainerAnnc.SHORT_NAME, namespace = "http://www.onem2m.org/xml/protocols/homedomain")
public class OpenLevelFlexContainerAnnc extends AbstractFlexContainerAnnc {
public static final String LONG_NAME = "openLevelAnnc";
public static final String SHORT_NAME = "opeLlAnnc";
public OpenLevelFlexContainerAnnc () {
setContainerDefinition("org.onem2m.home.moduleclass." + OpenLevelFlexContainer.LONG_NAME);
setLongName(LONG_NAME);
setShortName(SHORT_NAME);
}
public void finalizeSerialization() {
getOpenAnnc();
getCloseAnnc();
}
public void finalizeDeserialization() {
if (this.openAnnc != null){
setOpenAnnc(openAnnc);
}
if (this.closeAnnc != null){
setCloseAnnc(closeAnnc);
}
}
@XmlElement(name=OpenFlexContainerAnnc.SHORT_NAME, required=true, type=OpenFlexContainerAnnc.class, namespace="http://www.onem2m.org/xml/protocols/homedomain")
private OpenFlexContainerAnnc openAnnc;
public void setOpenAnnc(OpenFlexContainerAnnc openAnnc) {
this.openAnnc = openAnnc;
getFlexContainerOrContainerOrSubscription().add(openAnnc);
}
public OpenFlexContainerAnnc getOpenAnnc() {
this.openAnnc = (OpenFlexContainerAnnc) getResourceByName(OpenFlexContainerAnnc.SHORT_NAME);
return openAnnc;
}
@XmlElement(name=CloseFlexContainerAnnc.SHORT_NAME, required=true, type=CloseFlexContainerAnnc.class, namespace="http://www.onem2m.org/xml/protocols/homedomain")
private CloseFlexContainerAnnc closeAnnc;
public void setCloseAnnc(CloseFlexContainerAnnc closeAnnc) {
this.closeAnnc = closeAnnc;
getFlexContainerOrContainerOrSubscription().add(closeAnnc);
}
public CloseFlexContainerAnnc getCloseAnnc() {
this.closeAnnc = (CloseFlexContainerAnnc) getResourceByName(CloseFlexContainerAnnc.SHORT_NAME);
return closeAnnc;
}
}