private void handle(APICreateZoneMsg msg) { String zoneType = msg.getType(); if (zoneType == null) { zoneType = BaseZoneFactory.type.toString(); } ZoneFactory factory = this.getZoneFactory(ZoneType.valueOf(zoneType)); APICreateZoneEvent evt = new APICreateZoneEvent(msg.getId()); ZoneVO vo = new ZoneVO(); if (msg.getResourceUuid() != null) { vo.setUuid(msg.getResourceUuid()); } else { vo.setUuid(Platform.getUuid()); } vo.setName(msg.getName()); vo.setDescription(msg.getDescription()); vo = factory.createZone(vo, msg); tagMgr.createTagsFromAPICreateMessage(msg, vo.getUuid(), ZoneVO.class.getSimpleName()); evt.setInventory(ZoneInventory.valueOf(vo)); logger.debug("Created zone: " + vo.getName() + " uuid:" + vo.getUuid()); bus.publish(evt); }
public static ZoneInventory valueOf(ZoneVO vo) { ZoneInventory inv = new ZoneInventory(); inv.setName(vo.getName()); inv.setDescription(vo.getDescription()); inv.setUuid(vo.getUuid()); inv.setState(vo.getState().toString()); inv.setType(vo.getType()); inv.setCreateDate(vo.getCreateDate()); inv.setLastOpDate(vo.getLastOpDate()); return inv; }
protected void handle(APIChangeZoneStateMsg msg) { APIChangeZoneStateEvent evt = new APIChangeZoneStateEvent(msg.getId()); ZoneStateEvent stateEvt = ZoneStateEvent.valueOf(msg.getStateEvent()); try { extpEmitter.preChange(self, stateEvt); } catch (ZoneException e) { evt.setError(err(SysErrors.CHANGE_RESOURCE_STATE_ERROR, e.getMessage())); bus.publish(evt); return; } ZoneState formerState = self.getState(); extpEmitter.beforeChange(self, stateEvt); ZoneState next = AbstractZone.getNextState(self.getState(), stateEvt); self.setState(next); self = dbf.updateAndRefresh(self); extpEmitter.afterChange(self, stateEvt, formerState); evt.setInventory(ZoneInventory.valueOf(self)); logger.debug(String.format("Changed state of zone[uuid:%s] from %s to %s by event %s", self.getUuid(), formerState, self.getState(), stateEvt)); bus.publish(evt); }