Created
September 10, 2014 06:41
-
-
Save mokemokechicken/9eb89e3c69d7e97800ea to your computer and use it in GitHub Desktop.
OnOffFSM
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* Generator: http://goodparts.d.yumemi.jp/generator#StateMachineGenerator--1231df2dc497cc9b12e1241dcd2395c03a659468 | |
* ex: set ro: | |
* DO NOT EDIT. | |
* generated by smc (http://smc.sourceforge.net/) | |
* from file : OnOffFSM.sm | |
*/ | |
package com.example.global.fsm.gen; | |
import com.example.global.fsm.OnOffAction; | |
public class OnOffFSM | |
extends statemap.FSMContext | |
implements java.io.Serializable | |
{ | |
//--------------------------------------------------------------- | |
// Member methods. | |
// | |
public OnOffFSM(OnOffAction owner) | |
{ | |
this (owner, OnOffStateMap.OFF); | |
} | |
public OnOffFSM(OnOffAction owner, OnOffActionState initState) | |
{ | |
super (initState); | |
_owner = owner; | |
} | |
@Override | |
public void enterStartState() | |
{ | |
getState().entry(this); | |
return; | |
} | |
public void power() | |
{ | |
_transition = "power"; | |
getState().power(this); | |
_transition = ""; | |
return; | |
} | |
public OnOffActionState valueOf(int stateId) | |
throws ArrayIndexOutOfBoundsException | |
{ | |
return (_States[stateId]); | |
} | |
public OnOffActionState getState() | |
throws statemap.StateUndefinedException | |
{ | |
if (_state == null) | |
{ | |
throw( | |
new statemap.StateUndefinedException()); | |
} | |
return ((OnOffActionState) _state); | |
} | |
protected OnOffAction getOwner() | |
{ | |
return (_owner); | |
} | |
public void setOwner(OnOffAction owner) | |
{ | |
if (owner == null) | |
{ | |
throw ( | |
new NullPointerException( | |
"null owner")); | |
} | |
else | |
{ | |
_owner = owner; | |
} | |
return; | |
} | |
private void writeObject(java.io.ObjectOutputStream ostream) | |
throws java.io.IOException | |
{ | |
int size = | |
(_stateStack == null ? 0 : _stateStack.size()); | |
int i; | |
ostream.writeInt(size); | |
for (i = 0; i < size; ++i) | |
{ | |
ostream.writeInt( | |
((OnOffActionState) _stateStack.get(i)).getId()); | |
} | |
ostream.writeInt(_state.getId()); | |
return; | |
} | |
private void readObject(java.io.ObjectInputStream istream) | |
throws java.io.IOException | |
{ | |
int size; | |
size = istream.readInt(); | |
if (size == 0) | |
{ | |
_stateStack = null; | |
} | |
else | |
{ | |
int i; | |
_stateStack = | |
new java.util.Stack<statemap.State>(); | |
for (i = 0; i < size; ++i) | |
{ | |
_stateStack.add(i, _States[istream.readInt()]); | |
} | |
} | |
_state = _States[istream.readInt()]; | |
return; | |
} | |
//--------------------------------------------------------------- | |
// Member data. | |
// | |
transient private OnOffAction _owner; | |
transient private static OnOffActionState[] _States = | |
{ | |
OnOffStateMap.OFF, | |
OnOffStateMap.ON | |
}; | |
//----------------------------------------------------------- | |
// Constants. | |
// | |
private static final long serialVersionUID = 1L; | |
//--------------------------------------------------------------- | |
// Inner classes. | |
// | |
public static abstract class OnOffActionState | |
extends statemap.State | |
{ | |
//----------------------------------------------------------- | |
// Member methods. | |
// | |
protected OnOffActionState(String name, int id) | |
{ | |
super (name, id); | |
} | |
protected void entry(OnOffFSM context) {} | |
protected void exit(OnOffFSM context) {} | |
protected void power(OnOffFSM context) | |
{ | |
Default(context); | |
} | |
protected void Default(OnOffFSM context) | |
{ | |
throw ( | |
new statemap.TransitionUndefinedException( | |
"State: " + | |
context.getState().getName() + | |
", Transition: " + | |
context.getTransition())); | |
} | |
//----------------------------------------------------------- | |
// Member data. | |
// | |
} | |
/* package */ static abstract class OnOffStateMap | |
{ | |
//----------------------------------------------------------- | |
// Member methods. | |
// | |
//----------------------------------------------------------- | |
// Member data. | |
// | |
//------------------------------------------------------- | |
// Constants. | |
// | |
public static final OnOffStateMap_OFF OFF = | |
new OnOffStateMap_OFF("OnOffStateMap.OFF", 4); | |
public static final OnOffStateMap_ON ON = | |
new OnOffStateMap_ON("OnOffStateMap.ON", 5); | |
} | |
protected static class OnOffStateMap_Default | |
extends OnOffActionState | |
{ | |
//----------------------------------------------------------- | |
// Member methods. | |
// | |
protected OnOffStateMap_Default(String name, int id) | |
{ | |
super (name, id); | |
} | |
//----------------------------------------------------------- | |
// Member data. | |
// | |
//--------------------------------------------------- | |
// Constants. | |
// | |
private static final long serialVersionUID = 1L; | |
} | |
private static final class OnOffStateMap_OFF | |
extends OnOffStateMap_Default | |
{ | |
//------------------------------------------------------- | |
// Member methods. | |
// | |
private OnOffStateMap_OFF(String name, int id) | |
{ | |
super (name, id); | |
} | |
@Override | |
protected void entry(OnOffFSM context) | |
{ | |
OnOffAction ctxt = context.getOwner(); | |
ctxt.offAction(); | |
return; | |
} | |
@Override | |
protected void power(OnOffFSM context) | |
{ | |
(context.getState()).exit(context); | |
context.setState(OnOffStateMap.ON); | |
(context.getState()).entry(context); | |
return; | |
} | |
//------------------------------------------------------- | |
// Member data. | |
// | |
//--------------------------------------------------- | |
// Constants. | |
// | |
private static final long serialVersionUID = 1L; | |
} | |
private static final class OnOffStateMap_ON | |
extends OnOffStateMap_Default | |
{ | |
//------------------------------------------------------- | |
// Member methods. | |
// | |
private OnOffStateMap_ON(String name, int id) | |
{ | |
super (name, id); | |
} | |
@Override | |
protected void entry(OnOffFSM context) | |
{ | |
OnOffAction ctxt = context.getOwner(); | |
ctxt.onAction(); | |
return; | |
} | |
@Override | |
protected void power(OnOffFSM context) | |
{ | |
(context.getState()).exit(context); | |
context.setState(OnOffStateMap.OFF); | |
(context.getState()).entry(context); | |
return; | |
} | |
//------------------------------------------------------- | |
// Member data. | |
// | |
//--------------------------------------------------- | |
// Constants. | |
// | |
private static final long serialVersionUID = 1L; | |
} | |
} | |
/* | |
* Local variables: | |
* buffer-read-only: t | |
* End: | |
*/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment