blob: d9b1f6035ed524d03087ff483ed4bf1fc13184a7 [file] [log] [blame]
package net.onrc.onos.core.newintent;
import java.util.Collection;
import java.util.EventListener;
import net.onrc.onos.api.batchoperation.BatchOperation;
import net.onrc.onos.api.flowmanager.ConflictDetectionPolicy;
import net.onrc.onos.api.flowmanager.IFlow;
import net.onrc.onos.api.intent.IIntentRuntimeService;
import net.onrc.onos.api.intent.Intent;
import net.onrc.onos.api.intent.IntentId;
import net.onrc.onos.api.intent.IntentInstaller;
import net.onrc.onos.api.intent.IntentResolver;
/**
* Implementation of Intent-Runtime Service.
* <p>
* TODO: Make all methods thread-safe. <br>
* TODO: Design methods to support the ReactiveForwarding and the SDN-IP.
*/
public class IntentRuntimeModule implements IIntentRuntimeService {
@Override
public boolean install(Intent intent) {
// TODO: implement this method
return false;
}
@Override
public boolean remove(IntentId id) {
// TODO: implement this method
return false;
}
@Override
public Intent getIntent(IntentId id) {
// TODO Auto-generated method stub
// - retrieves intents from global distributed maps
return null;
}
@Override
public Collection<Intent> getIntents() {
// TODO Auto-generated method stub
// - retrieves intents from global distributed maps
return null;
}
@Override
public boolean executeBatch(BatchOperation<Intent> ops) {
// TODO Auto-generated method stub
// - gets flow operations using compile() method for each Intent object.
// - allocates resources
// - combines and executes flow operations using FlowManager Service.
// - updates global distributed maps
return false;
}
@Override
public <T extends Intent> void addResolver(Class<T> type, IntentResolver<T> resolver) {
//To change body of implemented methods use File | Settings | File Templates.
}
@Override
public <T extends Intent> void removeResolver(Class<T> type) {
//To change body of implemented methods use File | Settings | File Templates.
}
@Override
public <T extends Intent> boolean addInstaller(Class<T> type, IntentInstaller<T> installer) {
// TODO: implement this method
return false;
}
@Override
public <T extends Intent> boolean removeInstaller(Class<T> type) {
// TODO: impelment this method
return false;
}
@Override
public Collection<IFlow> getFlows(String intentId) {
// TODO Auto-generated method stub
return null;
}
@Override
public Intent getIntentByFlow(String flowId) {
// TODO Auto-generated method stub
return null;
}
@Override
public void setConflictDetectionPolicy(ConflictDetectionPolicy policy) {
// TODO Auto-generated method stub
}
@Override
public ConflictDetectionPolicy getConflictDetectionPolicy() {
// TODO Auto-generated method stub
return null;
}
@Override
public void addEventListener(EventListener listener) {
// TODO Auto-generated method stub
// - listener for addition/removal of intents,
// and states changes of intents
}
@Override
public void removeEventListener(EventListener listener) {
// TODO Auto-generated method stub
}
}