/*- | |
* ============LICENSE_START======================================================= | |
* OSAM Core | |
* ================================================================================ | |
* Copyright (C) 2018 Netsia | |
* ================================================================================ | |
* Licensed under the Apache License, Version 2.0 (the "License"); | |
* you may not use this file except in compliance with the License. | |
* You may obtain a copy of the License at | |
* | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Unless required by applicable law or agreed to in writing, software | |
* distributed under the License is distributed on an "AS IS" BASIS, | |
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
* See the License for the specific language governing permissions and | |
* limitations under the License. | |
* ============LICENSE_END========================================================= | |
*/ | |
/* | |
* Copyright 2015, Google Inc. All rights reserved. | |
* | |
* Redistribution and use in source and binary forms, with or without | |
* modification, are permitted provided that the following conditions are | |
* met: | |
* | |
* * Redistributions of source code must retain the above copyright | |
* notice, this list of conditions and the following disclaimer. | |
* * Redistributions in binary form must reproduce the above | |
* copyright notice, this list of conditions and the following disclaimer | |
* in the documentation and/or other materials provided with the | |
* distribution. | |
* | |
* * Neither the name of Google Inc. nor the names of its | |
* contributors may be used to endorse or promote products derived from | |
* this software without specific prior written permission. | |
* | |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | |
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | |
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | |
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | |
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
*/ | |
package org.onap.osam.external.grpc; | |
import io.grpc.stub.StreamObserver; | |
import lombok.extern.slf4j.Slf4j; | |
import org.lognet.springboot.grpc.GRpcService; | |
import org.onap.osam.grpc.*; | |
import java.util.UUID; | |
/** | |
* Server that manages startup/shutdown of a {@code AbstractOLTServer} server. | |
*/ | |
@GRpcService | |
@Slf4j | |
public class AbstractOLTServer extends AbstractOLTGrpc.AbstractOLTImplBase { | |
@Override | |
public void echo(EchoMessage request, StreamObserver<EchoReplyMessage> responseObserver) { | |
} | |
@Override | |
public void createChassis(AddChassisMessage request, StreamObserver<AddChassisReturn> responseObserver) { | |
AddChassisReturn response = AddChassisReturn.newBuilder() | |
.setDeviceID(request.getCLLI()) | |
.build(); | |
responseObserver.onNext(response); | |
responseObserver.onCompleted(); | |
log.info("createChassis with clli : {}" , request.getCLLI()); | |
} | |
@Override | |
public void createOLTChassis(AddOLTChassisMessage request, StreamObserver<AddOLTChassisReturn> responseObserver) { | |
AddOLTChassisReturn response = AddOLTChassisReturn.newBuilder() | |
.setDeviceID(UUID.randomUUID().toString()) | |
.setChassisDeviceID(request.getCLLI()).build(); | |
responseObserver.onNext(response); | |
responseObserver.onCompleted(); | |
log.info("createOLTChassis with clli : {}" , request.getCLLI()); | |
} | |
@Override | |
public void provisionOnt(AddOntMessage request, StreamObserver<AddOntReturn> responseObserver) { | |
AddOntReturn response = AddOntReturn.newBuilder().setSuccess(true).build(); | |
responseObserver.onNext(response); | |
responseObserver.onCompleted(); | |
log.info("provisionOnt success"); | |
} | |
@Override | |
public void deleteOnt(DeleteOntMessage request, StreamObserver<DeleteOntReturn> responseObserver) { | |
} | |
} |