#include <stdlib.h>
#include <unistd.h>
#include "rpcclt_openapi.h"
#include "proc_util.h"
void printGreenEthernetAppMenu()
{
printf("Usage: green_ethernet_example <test#> <arg1> <arg2> ... \n");
printf("Test 1: testGreenEthrEeeLpiHistoryIntfSampleIntervalSet: green_pwr_sav_history_example 1 <interval>\n");
printf("Test 2: testGreenEthrEeeLpiHistoryIntfSampleIntervalGet: green_pwr_sav_history_example 2\n");
printf("Test 3: testGreenEthrEeeLpiHistoryIntfMaxSamplesSet: green_pwr_sav_history_example 3 <samples>\n");
printf("Test 4: testGreenEthrEeeLpiHistoryIntfMaxSamplesGet: green_pwr_sav_history_example 4\n");
printf("Test 5: testGreenEthrPwrSavHistoryIntfStatisticsClear: green_pwr_sav_history_example 5 <interface>\n");
printf("Test 6: testx2GreenEthrPwrSavHistoryIntfEntriesGet: green_pwr_sav_history_example 6 <interface>\n");
return;
}
void testGreenEthrEeeLpiHistoryIntfSampleIntervalSet(
openapiClientHandle_t *clientHandle, uint32_t sampleInterval)
{
{
printf("Bad return code trying to set green mode power saving history sampling interval. (result = %d)\n", result);
}
else
{
printf("Set Green Mode Power Saving History Sampling Interval. (result = %d)\n", result);
}
return;
}
{
uint32_t sampleInterval;
{
printf("Bad return code trying to get green mode power saving history sampling interval. (result = %d)\n", result);
}
else
{
printf("Get green mode power saving history sampling interval: %d. (result = %d)\n",sampleInterval, result);
}
return;
}
void testGreenEthrEeeLpiHistoryIntfMaxSamplesSet(
openapiClientHandle_t *clientHandle, uint32_t maxSamples)
{
{
printf("Bad return code trying to set green mode power saving history max samples to keep. (result = %d)\n", result);
}
else
{
printf("Set green mode power saving history max samples to keep. (result = %d)\n", result);
}
return;
}
{
uint32_t maxSamples;
{
printf("Bad return code trying to get green mode power saving history max samples to keep. (result = %d)\n", result);
}
else
{
printf("Get green mode power saving history max samples to keep: %d (result = %d)\n", maxSamples, result);
}
return;
}
void testGreenEthrPwrSavHistoryIntfStatisticsClear(
openapiClientHandle_t *clientHandle, uint32_t intIfNum)
{
{
printf("Bad return code trying to clear Green Mode Power Saving History Statistics. (result = %d)\n", result);
}
else
{
printf("Clear Green Mode Power Saving History Statistics. (result = %d)\n", result);
}
return;
}
{
{
printf("Bad return code trying to get first valid entry of green mode power savings history. (result = %d)\n", result);
}
else
{
printf("First valid entry of green mode power savings history:\n");
printf(
"sampleNo %d\n", entry.
sampleNo);
while (1)
{
{
{
printf("Bad return code trying to get next valid entry of green mode power savings history. (result = %d)\n", result);
}
else
{
printf("\nNext valid entry of green mode power savings history:\n");
printf(
"sampleNo %d\n", entry.
sampleNo);
}
}
else
{
printf("No more entries\n");
break;
}
}
}
return;
}
{
return;
}
int main(int argc, char **argv)
{
uint32_t testNum;
char switch_os_revision_string[OPENAPI_OS_REVISION_STR_SIZE];
uint32_t arg1;
if (argc < 2)
{
printGreenEthernetAppMenu();
exit(1);
}
testNum = atoi(argv[1]);
l7proc_crashlog_register();
{
printf("\nFailed to initialize RPC to OpEN. Exiting (result = %d)\n", result);
exit(2);
}
{
sleep(1);
}
L7PROC_LOGF(L7PROC_LOG_SEVERITY_INFO, 0, "Starting green pwr save history API example application");
printf("\n");
switch_os_revision.
pstart = switch_os_revision_string;
switch_os_revision.
size =
sizeof(switch_os_revision_string);
printf("Network OS version = %s\n", switch_os_revision_string);
else
printf("Network OS version retrieve error\n");
printf("Open API Version = %d.%d.%d.%d\n",
openApiVersion.
maint_level,
openApiVersion.
build_num);
else
printf("Open API Version retrieve error\n");
printf("\n");
switch (testNum)
{
case 1:
if (argc != 3)
{
printGreenEthernetAppMenu();
exit(1);
}
arg1 = atoi(argv[2]);
testGreenEthrEeeLpiHistoryIntfSampleIntervalSet(&clientHandle, arg1);
break;
case 2:
if (argc != 2)
{
printGreenEthernetAppMenu();
exit(1);
}
testGreenEthrEeeLpiHistoryIntfSampleIntervalGet(&clientHandle);
break;
case 3:
if (argc != 3)
{
printGreenEthernetAppMenu();
exit(1);
}
arg1 = atoi(argv[2]);
testGreenEthrEeeLpiHistoryIntfMaxSamplesSet(&clientHandle, arg1);
break;
case 4:
if (argc != 2)
{
printGreenEthernetAppMenu();
exit(1);
}
testGreenEthrEeeLpiHistoryIntfMaxSamplesGet(&clientHandle);
break;
case 5:
if (argc != 3)
{
printGreenEthernetAppMenu();
exit(1);
}
arg1 = atoi(argv[2]);
testGreenEthrPwrSavHistoryIntfStatisticsClear(&clientHandle, arg1);
break;
case 6:
if (argc != 3)
{
printGreenEthernetAppMenu();
exit(1);
}
arg1 = atoi(argv[2]);
testx2GreenEthrPwrSavHistoryIntfEntriesGet(&clientHandle, arg1);
break;
default:
printGreenEthernetAppMenu();
break;
}
L7PROC_LOGF(L7PROC_LOG_SEVERITY_INFO, 0, "Stopping green ethernet API example application");
return 0;
}