[ 
https://issues.apache.org/jira/browse/APEXCORE-448?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15407004#comment-15407004
 ] 

ASF GitHub Bot commented on APEXCORE-448:
-----------------------------------------

Github user chandnisingh commented on a diff in the pull request:

    https://github.com/apache/apex-core/pull/364#discussion_r73453391
  
    --- Diff: 
engine/src/test/java/com/datatorrent/stram/engine/OperatorContextTest.java ---
    @@ -0,0 +1,99 @@
    +/**
    + * Licensed to the Apache Software Foundation (ASF) under one
    + * or more contributor license agreements.  See the NOTICE file
    + * distributed with this work for additional information
    + * regarding copyright ownership.  The ASF licenses this file
    + * to you 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.
    + */
    +package com.datatorrent.stram.engine;
    +
    +import java.util.Collection;
    +import java.util.Map;
    +import java.util.concurrent.CountDownLatch;
    +import java.util.concurrent.TimeUnit;
    +
    +import org.junit.Assert;
    +import org.junit.Test;
    +
    +import org.apache.hadoop.conf.Configuration;
    +
    +import com.google.common.base.Preconditions;
    +
    +import com.datatorrent.api.AutoMetric;
    +import com.datatorrent.api.Context;
    +import com.datatorrent.api.DAG;
    +import com.datatorrent.api.DefaultOutputPort;
    +import com.datatorrent.api.InputOperator;
    +import com.datatorrent.api.LocalMode;
    +import com.datatorrent.api.StreamingApplication;
    +import com.datatorrent.common.util.BaseOperator;
    +
    +public class OperatorContextTest
    +{
    +
    +  @Test
    +  public void testInjectionOfOperatorName() throws Exception
    +  {
    +    final LocalMode lma = LocalMode.newInstance();
    +    final CountDownLatch latch = new CountDownLatch(1);
    +    StreamingApplication testApp = new StreamingApplication()
    +    {
    +      @Override
    +      public void populateDAG(DAG dag, Configuration conf)
    +      {
    +        MockInputOperator input = dag.addOperator("input", new 
MockInputOperator());
    +        input.countDownLatch = latch;
    +        GenericNodeTest.GenericOperator output = dag.addOperator("output", 
new GenericNodeTest.GenericOperator());
    +
    +        dag.addStream("stream", input.output, output.ip1);
    +      }
    +    };
    +
    +    lma.prepareDAG(testApp, new Configuration());
    +    LocalMode.Controller lc = lma.getController();
    +    lc.runAsync();
    +    latch.await(2, TimeUnit.SECONDS);
    +    lc.shutdown();
    +  }
    +
    +  private static class MockInputOperator extends BaseOperator implements 
InputOperator, AutoMetric.Aggregator
    +  {
    +    private transient CountDownLatch countDownLatch;
    +
    +    @AutoMetric
    +    String operatorName;
    +
    +    public final transient DefaultOutputPort<String> output = new 
DefaultOutputPort<>();
    +
    +    @Override
    +    public void setup(Context.OperatorContext context)
    +    {
    +      operatorName = Preconditions.checkNotNull(context.getName(), 
"operator name");
    --- End diff --
    
    Yes, this line is still same that is why but the assignment is happening to 
a static variable.


> Make operator name available in OperatorContext
> -----------------------------------------------
>
>                 Key: APEXCORE-448
>                 URL: https://issues.apache.org/jira/browse/APEXCORE-448
>             Project: Apache Apex Core
>          Issue Type: Improvement
>            Reporter: Chandni Singh
>            Assignee: Chandni Singh
>
> Need name of the logical operator in the OperatorContext which can be used by 
> WindowDataManager to create a unique path per logical operator .



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to